:root{
  --mcf-ground:#E8D8BF;
  --mcf-text:#221C19;
  --mcf-muted:#76685D;
  --mcf-line:#B99D82;
  --mcf-accent:#7B1E28;
  --mcf-paper:#f1e5d2;
  --mcf-display:Georgia,"Times New Roman",Times,serif;
  --mcf-body:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --mcf-max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--mcf-ground);
  color:var(--mcf-text);
  font-family:var(--mcf-body);
  font-size:16px;
  line-height:1.5;
  overflow-x:hidden;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(90deg,rgba(34,28,25,.035) 1px,transparent 1px);
  background-size:clamp(44px,7vw,96px) 100%;
}
a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
p,li,dd,dt,h1,h2,h3,span,strong,small{min-width:0;overflow-wrap:anywhere}
p{max-width:72ch}
svg{display:block;width:100%;height:auto}
.mcf-skip{
  position:absolute;
  left:1rem;
  top:-4rem;
  z-index:20;
  background:var(--mcf-accent);
  color:var(--mcf-ground);
  padding:.75rem 1rem;
}
.mcf-skip:focus{top:1rem}
.mcf-site-head{
  width:min(var(--mcf-max),calc(100% - 32px));
  margin:0 auto;
  padding:22px 0 14px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid var(--mcf-line);
}
.mcf-brand{display:flex;align-items:center;gap:12px}
.mcf-brand-mark{
  display:grid;
  place-items:center;
  width:48px;
  aspect-ratio:1;
  border:1px solid var(--mcf-text);
  background:var(--mcf-accent);
  color:var(--mcf-ground);
  font-family:var(--mcf-display);
  letter-spacing:.04em;
}
.mcf-brand strong{display:block;font-weight:600}
.mcf-brand small{display:block;color:var(--mcf-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.mcf-nav{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end;font-size:.86rem;font-weight:600}
.mcf-nav a,.mcf-footer a,.mcf-text-link,.mcf-link-strip a{
  border-bottom:1px solid currentColor;
  transition:color .22s ease,transform .22s ease,border-color .22s ease;
}
.mcf-nav a:hover,.mcf-footer a:hover,.mcf-text-link:hover,.mcf-link-strip a:hover{
  color:var(--mcf-accent);
  transform:translateX(3px);
}
main{position:relative}
.mcf-section{
  width:min(var(--mcf-max),calc(100% - 32px));
  margin:0 auto;
  padding:78px 0;
}
.mcf-hero{
  min-height:calc(100vh - 88px);
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);
  gap:clamp(28px,6vw,84px);
  align-items:center;
  text-align:center;
}
.mcf-hero-copy{justify-self:center;max-width:860px}
.mcf-kicker{
  margin:0 0 16px;
  color:var(--mcf-muted);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.mcf-display,h1{
  margin:0;
  font-family:var(--mcf-display);
  font-size:clamp(3.05rem,9vw,5.4rem);
  line-height:.9;
  font-weight:400;
  letter-spacing:-.055em;
  text-wrap:balance;
}
.mcf-mask-line{position:relative}
.mcf-js .mcf-mask-line:after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--mcf-ground);
  transform-origin:right;
  animation:mcf-wipe 1.1s cubic-bezier(.7,0,.1,1) .12s forwards;
}
.mcf-lede{
  margin:24px auto 0;
  font-size:clamp(1.05rem,2vw,1.22rem);
  color:var(--mcf-muted);
}
.mcf-hero-pricing{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  text-align:left;
}
.mcf-hero-pricing .mcf-price-card{
  padding:16px;
}
.mcf-hero-pricing .mcf-price-card h3{
  margin:14px 0 4px;
  font-size:clamp(1.9rem,3vw,2.25rem);
}
.mcf-hero-pricing .mcf-price-card p:last-child{
  margin:0;
  color:var(--mcf-muted);
  font-size:.86rem;
}
.mcf-hero-actions{margin-top:30px;display:flex;gap:18px;justify-content:center;align-items:center;flex-wrap:wrap}
.mcf-button{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:.82rem 1.05rem .78rem;
  border:1px solid var(--mcf-accent);
  background:var(--mcf-accent);
  color:var(--mcf-ground);
  font-size:.86rem;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:color .22s ease,background .22s ease,transform .22s ease;
}
.mcf-button:hover{background:transparent;color:var(--mcf-accent);transform:translateX(3px)}
.mcf-hero-panel{
  border:1px solid var(--mcf-text);
  background:var(--mcf-accent);
  overflow:hidden;
  color:var(--mcf-ground);
  animation:mcf-drift 12s ease-in-out infinite alternate;
}
.mcf-map-svg rect{fill:var(--mcf-accent)}
.mcf-map-svg path{fill:none;stroke:var(--mcf-ground);stroke-width:2;vector-effect:non-scaling-stroke}
.mcf-map-svg circle{fill:var(--mcf-ground);stroke:var(--mcf-text);stroke-width:2;vector-effect:non-scaling-stroke}
.mcf-map-svg text{fill:var(--mcf-ground);font:600 22px var(--mcf-body);letter-spacing:.08em;text-transform:uppercase}
.mcf-hero-facts{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  width:100%;
  border:1px solid var(--mcf-text);
  text-align:left;
}
.mcf-hero-facts div{
  padding:22px;
  border-right:1px solid var(--mcf-text);
}
.mcf-hero-facts div:last-child{border-right:0}
.mcf-hero-facts dt,.mcf-hero-facts div>dt{
  color:var(--mcf-muted);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.mcf-hero-facts dd,.mcf-hero-facts div>dd{
  margin:4px 0 0;
  font-family:var(--mcf-display);
  font-size:clamp(2.25rem,5vw,3.6rem);
  line-height:1;
  letter-spacing:-.045em;
}
.mcf-hero-facts dd strong{
  display:block;
  color:var(--mcf-accent);
  font-family:var(--mcf-display);
  font-size:clamp(2.25rem,5vw,3.6rem);
  line-height:1;
  font-weight:400;
  letter-spacing:-.045em;
}
.mcf-section-head{
  margin-bottom:30px;
  text-align:left;
}
.mcf-section-head h2{
  margin:0;
  max-width:880px;
  font-family:var(--mcf-display);
  font-size:clamp(2.25rem,5.5vw,3.6rem);
  line-height:.96;
  font-weight:400;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.mcf-section-head p:not(.mcf-kicker){color:var(--mcf-muted);font-size:1.05rem}
.mcf-card-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:16px;
}
.mcf-card-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.mcf-card-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.mcf-price-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:24px;
  border:1px solid var(--mcf-text);
  background:rgba(241,229,210,.38);
}
.mcf-card-label{
  margin:0 0 auto;
  color:var(--mcf-muted);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.mcf-price-card h3{
  margin:24px 0 2px;
  font-family:var(--mcf-display);
  font-size:clamp(2.25rem,4vw,3.6rem);
  line-height:.95;
  font-weight:400;
  letter-spacing:-.04em;
}
.mcf-price-card h3 span{font-family:var(--mcf-body);font-size:.86rem;letter-spacing:0;color:var(--mcf-muted)}
.mcf-alt-price{margin:0 0 20px;color:var(--mcf-muted);font-weight:600}
.mcf-price-card dl{margin:18px 0 24px}
.mcf-price-card dt{
  margin-top:12px;
  color:var(--mcf-muted);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.mcf-price-card dd{margin:2px 0 0}
.mcf-price-card .mcf-button{margin-top:auto}
.mcf-mini-prices{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--mcf-line);
  border-bottom:1px solid var(--mcf-line);
}
.mcf-mini-prices span{padding:16px;border-right:1px solid var(--mcf-line);font-weight:600}
.mcf-mini-prices span:last-child{border-right:0}
.mcf-process-strip,.mcf-timeline{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border:1px solid var(--mcf-text);
}
.mcf-process-strip li,.mcf-timeline li{
  padding:22px;
  border-right:1px solid var(--mcf-text);
}
.mcf-process-strip li:last-child,.mcf-timeline li:last-child{border-right:0}
.mcf-process-strip b,.mcf-timeline b,.mcf-spec b,.mcf-checklist b{
  display:block;
  margin-bottom:8px;
  font-family:var(--mcf-display);
  font-size:1.6rem;
  line-height:1;
  font-weight:400;
}
.mcf-process-strip span,.mcf-timeline span,.mcf-spec span,.mcf-checklist span{color:var(--mcf-muted)}
.mcf-owner-note,.mcf-closure-note,.mcf-clause,.mcf-contact-card{
  margin-top:28px;
  padding:28px;
  border:1px solid var(--mcf-text);
  background:transparent;
}
.mcf-owner-note h3,.mcf-clause h3{
  margin:0 0 12px;
  font-family:var(--mcf-display);
  font-size:2.25rem;
  line-height:1;
  font-weight:400;
  letter-spacing:-.035em;
}
.mcf-owner-note p,.mcf-clause p{font-size:1.05rem;color:var(--mcf-muted)}
.mcf-closure-note{background:var(--mcf-accent);color:var(--mcf-ground);border-color:var(--mcf-accent)}
.mcf-closure-note p{
  margin:0;
  max-width:900px;
  font-family:var(--mcf-display);
  font-size:clamp(1.6rem,3vw,2.25rem);
  line-height:1.08;
}
.mcf-clause-grid,.mcf-spec-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.mcf-clause-wide{grid-column:1/-1}
.mcf-spec-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.mcf-values-grid{
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}
.mcf-spec{
  padding:22px;
  border-top:1px solid var(--mcf-text);
  border-bottom:1px solid var(--mcf-line);
}
.mcf-rule-list,.mcf-checklist{
  list-style:none;
  margin:0;
  padding:0;
}
.mcf-rule-list li,.mcf-checklist li{
  position:relative;
  padding:12px 0 12px 24px;
  border-top:1px solid var(--mcf-line);
  transition:transform .22s ease,color .22s ease;
}
.mcf-rule-list li:before,.mcf-checklist li:before{
  content:"";
  position:absolute;
  left:0;
  top:1.15rem;
  width:8px;
  aspect-ratio:1;
  border:1px solid var(--mcf-accent);
  border-radius:50%;
  transition:background .22s ease,transform .22s ease;
}
.mcf-rule-list li:hover,.mcf-checklist li:hover{transform:translateX(6px);color:var(--mcf-accent)}
.mcf-rule-list li:hover:before,.mcf-checklist li:hover:before{background:var(--mcf-accent);transform:scale(1.12)}
.mcf-checklist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 28px;
}
.mcf-table-wrap{overflow-x:auto;border:1px solid var(--mcf-text)}
.mcf-spec-table{
  width:100%;
  min-width:860px;
  border-collapse:collapse;
  text-align:left;
}
.mcf-spec-table th,.mcf-spec-table td{
  padding:14px;
  border-right:1px solid var(--mcf-line);
  border-bottom:1px solid var(--mcf-line);
  vertical-align:top;
}
.mcf-spec-table th{font-weight:700}
.mcf-price-pair{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  text-align:left;
}
.mcf-contact-card{margin-top:0;text-align:left}
.mcf-contact-card dl{display:grid;grid-template-columns:auto 1fr;gap:12px 18px}
.mcf-contact-card dt{font-weight:700}
.mcf-contact-card dd{margin:0;color:var(--mcf-muted)}
.mcf-accordion details{
  border-top:1px solid var(--mcf-text);
  padding:18px 0;
}
.mcf-accordion details:last-child{border-bottom:1px solid var(--mcf-text)}
.mcf-accordion summary{
  cursor:pointer;
  font-family:var(--mcf-display);
  font-size:1.6rem;
  list-style:none;
}
.mcf-accordion summary::-webkit-details-marker{display:none}
.mcf-accordion p{color:var(--mcf-muted)}
.mcf-link-strip{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;font-weight:700}
.mcf-next{text-align:center}
.mcf-next .mcf-section-head{display:grid;justify-items:start}
.mcf-route-rail{
  position:fixed;
  z-index:8;
  left:max(10px,calc((100vw - var(--mcf-max))/2 - 92px));
  top:148px;
  display:grid;
  gap:18px;
  font-size:.72rem;
}
.mcf-route-rail:before{
  content:"";
  position:absolute;
  left:12px;
  top:4px;
  bottom:4px;
  width:14px;
  background:repeating-linear-gradient(to bottom,var(--mcf-line) 0 1px,transparent 1px 14px);
  opacity:.9;
  pointer-events:none;
}
.mcf-rail-track{
  position:absolute;
  left:18px;
  top:0;
  bottom:0;
  width:1px;
  background:var(--mcf-line);
}
.mcf-rail-fill{
  display:block;
  width:100%;
  height:0%;
  background:var(--mcf-accent);
}
.mcf-route-rail a{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:36px auto;
  gap:10px;
  align-items:center;
  color:var(--mcf-muted);
}
.mcf-route-rail b{
  display:grid;
  place-items:center;
  width:36px;
  aspect-ratio:1;
  border:1px solid var(--mcf-line);
  border-radius:50%;
  background:var(--mcf-ground);
  color:var(--mcf-muted);
  font-family:var(--mcf-display);
  font-weight:400;
}
.mcf-route-rail span{text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.mcf-route-rail a.is-active{color:var(--mcf-accent)}
.mcf-route-rail a.is-active b{border-color:var(--mcf-accent);background:var(--mcf-accent);color:var(--mcf-ground)}
.mcf-footer{
  width:min(var(--mcf-max),calc(100% - 32px));
  margin:30px auto 0;
  padding:36px 0 44px;
  border-top:1px solid var(--mcf-text);
  display:grid;
  grid-template-columns:1.2fr 1fr auto;
  gap:30px;
}
.mcf-footer h2{
  margin:0 0 10px;
  font-family:var(--mcf-display);
  font-size:2.25rem;
  font-weight:400;
  letter-spacing:-.04em;
}
.mcf-footer p{color:var(--mcf-muted);margin:.4rem 0}
.mcf-footer nav{display:grid;gap:8px;align-content:start}
.mcf-js .mcf-reveal.mcf-is-hidden{
  opacity:1;
  transform:translateY(18px);
}
.mcf-js .mcf-reveal{
  opacity:1;
  transform:none;
  transition:opacity .55s ease,transform .55s ease;
}
@keyframes mcf-wipe{to{transform:scaleX(0)}}
@keyframes mcf-drift{from{transform:scale(1)}to{transform:scale(1.018) translateY(-4px)}}
@media (max-width:1220px){
  .mcf-route-rail{
    position:sticky;
    top:0;
    left:auto;
    width:100%;
    padding:8px 16px;
    background:rgba(232,216,191,.94);
    border-bottom:1px solid var(--mcf-line);
    grid-template-columns:repeat(5,1fr);
    gap:4px;
  }
  .mcf-route-rail:before{display:none}
  .mcf-rail-track{display:none}
  .mcf-route-rail a{grid-template-columns:1fr;justify-items:center;gap:4px}
  .mcf-route-rail b{width:28px}
  .mcf-route-rail span{font-size:.62rem}
}
@media (max-width:900px){
  .mcf-site-head,.mcf-footer{grid-template-columns:1fr}
  .mcf-site-head{display:grid}
  .mcf-nav{justify-content:flex-start}
  .mcf-hero{grid-template-columns:1fr;min-height:auto;text-align:left}
  .mcf-hero-copy{justify-self:start}
  .mcf-hero-actions{justify-content:flex-start}
  .mcf-card-grid,.mcf-card-grid-four,.mcf-card-grid-three,.mcf-spec-grid,.mcf-clause-grid,.mcf-checklist,.mcf-mini-prices,.mcf-values-grid{grid-template-columns:1fr 1fr}
  .mcf-process-strip,.mcf-timeline{grid-template-columns:1fr}
  .mcf-process-strip li,.mcf-timeline li{border-right:0;border-bottom:1px solid var(--mcf-text)}
  .mcf-process-strip li:last-child,.mcf-timeline li:last-child{border-bottom:0}
}
@media (max-width:560px){
  .mcf-section{width:min(var(--mcf-max),calc(100% - 24px));padding:54px 0}
  .mcf-site-head,.mcf-footer{width:min(var(--mcf-max),calc(100% - 24px))}
  .mcf-display,h1{font-size:clamp(2.65rem,17vw,3.6rem)}
  .mcf-section-head h2{font-size:2.25rem}
  .mcf-card-grid,.mcf-card-grid-four,.mcf-card-grid-three,.mcf-spec-grid,.mcf-clause-grid,.mcf-checklist,.mcf-mini-prices,.mcf-hero-facts,.mcf-hero-pricing,.mcf-values-grid{grid-template-columns:1fr}
  .mcf-hero-facts div,.mcf-mini-prices span{border-right:0;border-bottom:1px solid var(--mcf-line)}
  .mcf-hero-facts div:last-child,.mcf-mini-prices span:last-child{border-bottom:0}
  .mcf-route-rail{display:none}
  .mcf-contact-card dl{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
  .mcf-js .mcf-reveal.mcf-is-hidden{opacity:1;transform:none}
}