@font-face{
  font-family:Cormorant;
  src:url('fonts/cormorant-garamond.woff2') format('woff2');
  font-weight:300 700;
  font-display:swap
}
@font-face{
  font-family:Manrope;
  src:url('fonts/manrope.woff2') format('woff2');
  font-weight:200 800;
  font-display:swap
}
/* Match the fallback headline width to avoid an extra line before font load. */
@font-face{
  font-family:CormorantFallback;
  src:local('Georgia');
  size-adjust:87.81%;
  font-weight:300 700
}
:root{
  --ivory:#f5f0e7;
  --linen:#ece4d7;
  --terracotta:#b65f42;
  --terracotta-ink:#97472f;
  --olive:#394333;
  --ink:#262521;
  --sand:#d9c9b3;
  --beige:#e9ded0;
  --brass:#a7865d;
  --muted:#625e55;
  --line:#c9bdac;
  --serif:Cormorant,CormorantFallback,Georgia,serif;
  --sans:Manrope,Arial,sans-serif;
  --space-1:.25rem;
  --space-2:.5rem;
  --space-3:.75rem;
  --space-4:1rem;
  --space-6:1.5rem;
  --space-8:2rem;
  --space-12:3rem;
  --space-16:4rem;
  --space-24:6rem;
  --space-32:8rem;
  --gutter:1.25rem;
  --content:82rem;
  --section:4.5rem;
  --space-5:1.25rem;
  --space-10:2.5rem;
  --space-14:3.5rem;
  --space-18:4.5rem;
  --space-28:7rem;
  --text-body:1rem;
  --text-small:.875rem;
  --text-label:.75rem;
  --surface-garden:#d5d9cb;
  --surface-grill:#48513e;
  --line-on-dark:#78816d;
  --hero-max:96rem;
  --action-height:4.5rem;
  --header-height:6rem
}
*{
  box-sizing:border-box
}
html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-height) + var(--space-4))
}
body{
  margin:0;
  background:var(--ivory);
  color:var(--ink);
  font:400 1rem/1.75 var(--sans);
  -webkit-font-smoothing:antialiased
}
button,a{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation
}
a{
  color:inherit;
  text-decoration:none
}
button{
  font:inherit
}
button:disabled{
  cursor:not-allowed
}
::selection{
  background:var(--sand);
  color:var(--ink)
}
:focus-visible{
  outline:3px solid var(--terracotta-ink);
  outline-offset:5px
}
h1,h2,h3,p,figure{
  margin:0
}
h1,h2,h3{
  font-family:var(--serif);
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.035em
}
h1{
  font-size:clamp(3.05rem,7vw,6.4rem)
}
h2{
  font-size:clamp(2.75rem,5.1vw,5rem)
}
h3{
  font-size:2.2rem
}
em{
  font-weight:400
}
p{
  max-width:44rem
}
p+p{
  margin-top:var(--space-4)
}
.wrap{
  width:min(calc(100% - var(--gutter)*2),var(--content));
  margin-inline:auto
}
.section{
  padding-block:var(--section)
}
.eyebrow{
  font-size:var(--text-label);
  font-weight:700;
  letter-spacing:.18em;
  line-height:1.5;
  margin-bottom:var(--space-6)
}
.section-copy h2{
  margin-bottom:1.75rem
}
.section-copy>p:not(.eyebrow){
  color:var(--muted)
}
.section-copy .actions{
  margin-top:var(--space-8)
}
.actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-6);
  align-items:center
}
.button{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:var(--space-6);
  min-height:3.3rem;
  padding:.9rem 1.45rem;
  background:var(--olive);
  color:var(--ivory);
  font-size:var(--text-small);
  font-weight:600;
  border:1px solid var(--olive);
  transition:background .2s,color .2s
}
.button:hover{
  background:var(--ink)
}
.button span{
  font-size:1.2rem
}
.button-small{
  min-height:2.8rem;
  padding:.55rem var(--space-4);
  font-size:.8rem;
  white-space:nowrap
}
.button-light{
  background:var(--ivory);
  color:var(--olive);
  border-color:var(--ivory)
}
.button-light:hover{
  background:var(--sand)
}
.text-link{
  display:inline-flex;
  align-items:center;
  gap:var(--space-5);
  min-height:2.75rem;
  border-bottom:1px solid currentColor;
  font-size:var(--text-small);
  font-weight:600;
  line-height:1.5
}
.text-link:hover{
  color:var(--terracotta-ink)
}
.skip-link{
  position:fixed;
  left:1rem;
  top:-8rem;
  padding:var(--space-4);
  background:var(--ivory);
  z-index:100
}
.skip-link:focus{
  top:1rem
}
.site-header{
  position:sticky;
  top:0;
  z-index:30;
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:5.3rem;
  padding:.8rem var(--gutter);
  background:var(--ivory);
  border-bottom:1px solid var(--line);
  gap:var(--space-4)
}
.wordmark{
  font-family:var(--serif);
  font-size:1.9rem;
  letter-spacing:-.06em;
  line-height:1;
  white-space:nowrap
}
.wordmark span{
  display:block;
  font:600 .75rem/1.8 var(--sans);
  letter-spacing:.16em;
  margin-top:.45rem
}
.menu-toggle{
  display:flex;
  align-items:center;
  gap:var(--space-3);
  min-height:44px;
  background:none;
  border:0;
  color:var(--ink);
  font-size:var(--text-small);
  padding:var(--space-2)
}
.menu-lines{
  display:block;
  width:21px;
  height:10px;
  border-block:1px solid currentColor
}
.navigation{
  display:none;
  position:absolute;
  top:100%;
  left:0;
  right:0;
  max-height:calc(100dvh - var(--header-height) - var(--action-height));
  overflow:auto;
  background:var(--ivory);
  padding:var(--space-6) var(--gutter) var(--space-8);
  border-bottom:1px solid var(--line)
}
.navigation.is-open{
  display:flex;
  flex-direction:column;
  flex-wrap:nowrap;
  gap:var(--space-2)
}
.navigation>a:not(.button){
  padding:var(--space-2) 0;
  min-height:44px;
  font-size:var(--text-body)
}
.navigation>a:hover{
  color:var(--terracotta-ink)
}
.navigation>a.button:hover{
  color:var(--ivory)
}
.languages{
  display:flex;
  gap:.6rem;
  align-items:center;
  font-size:.8rem
}
.languages button{
  border:0;
  background:none;
  color:var(--muted);
  padding:.6rem var(--space-1);
  min-height:44px
}
.hero{
  width:min(calc(100% - var(--gutter)*2),var(--hero-max));
  margin:auto;
  padding-top:2.8rem;
  display:grid;
  gap:var(--space-10)
}
.hero-copy h1 em{
  color:var(--olive)
}
.hero-description{
  margin:1.8rem 0;
  max-width:32rem;
  font-size:var(--text-body)
}
.hero .eyebrow{
  margin-bottom:1.1rem
}
.scroll-link{
  display:inline-flex;
  gap:.8rem;
  align-items:center;
  font-size:var(--text-small);
  margin-top:var(--space-10);
  min-height:44px
}
.scroll-link>span{
  font-size:1.4rem
}
.hero-visual{
  position:relative;
  padding-bottom:var(--space-8)
}
.photo-placeholder{
  position:relative;
  background:var(--linen);
  border:1px solid var(--line);
  min-height:19rem;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  color:var(--olive)
}
.photo-placeholder::before{
  content:"";
  position:absolute;
  inset:1rem;
  border:1px solid currentColor;
  opacity:.16;
  pointer-events:none
}
.placeholder-center{
  display:flex;
  flex-direction:column;
  gap:.85rem;
  text-align:center;
  padding:var(--space-18) var(--space-6);
  align-items:center
}
.frame-mark{
  width:2rem;
  height:1.5rem;
  border:1px solid currentColor;
  position:relative;
  margin-bottom:.3rem;
  opacity:.65
}
.frame-mark::after{
  content:"+";
  position:absolute;
  inset:0;
  font:300 1.2rem/1.2 var(--sans)
}
.placeholder-label{
  font:600 .75rem/1.5 var(--sans);
  letter-spacing:.14em
}
.placeholder-title{
  font:400 2.6rem/1.07 var(--serif);
  letter-spacing:-.02em
}
.placeholder-note{
  font-size:var(--text-label);
  line-height:1.6
}
.hero-photo{
  min-height:30rem;
  background:var(--olive);
  color:var(--ivory);
  border:0;
  border-radius:48% 48% 0 0
}
.hero-note{
  position:relative;
  margin:-3.5rem var(--space-6) 0;
  background:var(--sand);
  color:var(--ink);
  padding:var(--space-6);
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:.8rem;
  border:1px solid var(--ivory)
}
.hero-note>span{
  font-size:var(--text-label);
  letter-spacing:.14em;
  font-weight:700;
  grid-column:1/-1
}
.hero-note p{
  font:500 2rem/1.06 var(--serif)
}
.hero-note a{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid var(--olive);
  border-radius:50%;
  font-size:1.5rem
}
.brand-line{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:var(--space-4);
  padding:1.8rem var(--gutter);
  margin-top:var(--space-10);
  border-block:1px solid var(--line);
  font:500 clamp(1.2rem,2.2vw,1.8rem) var(--serif);
  color:var(--olive)
}
.brand-line>span:nth-child(even){
  color:var(--terracotta);
  font-size:var(--text-body)
}
.split{
  display:grid;
  gap:var(--space-10);
  align-items:center
}
.intro-copy{
  max-width:37rem
}
.intro-photo{
  min-height:23rem
}
.experience-header{
  display:flex;
  flex-wrap:wrap;
  align-items:end;
  justify-content:space-between;
  gap:var(--space-6);
  margin-bottom:var(--space-10)
}
.experience-grid{
  display:grid;
  gap:var(--space-8)
}
.experience-card .photo-placeholder{
  min-height:21rem
}
.experience-card h3{
  margin:1.3rem 0 var(--space-3)
}
.experience-card p{
  font-size:var(--text-body);
  color:var(--muted)
}
.experience-card .text-link{
  margin-top:var(--space-4)
}
.card-label{
  display:block;
  font-size:var(--text-label);
  letter-spacing:.12em;
  font-weight:700;
  margin-top:1.3rem
}
.feature{
  background:var(--linen)
}
.feature .photo-placeholder{
  min-height:31rem;
  background:var(--sand)
}
.feature h2 em{
  color:var(--terracotta-ink)
}
.food-list{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2) var(--space-4);
  padding:var(--space-5) 0;
  margin:var(--space-6) 0 0;
  list-style:none;
  border-block:1px solid var(--line);
  font-size:var(--text-small)
}
.food-list li:not(:last-child)::after{
  content:"·";
  margin-left:var(--space-4)
}
.bread{
  border-bottom:1px solid var(--line)
}
.bread .photo-placeholder{
  background:var(--beige);
  min-height:25rem
}
.kitchen-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-8) var(--space-4);
  margin-top:var(--space-12)
}
.kitchen-item .photo-placeholder{
  min-height:clamp(16rem,26vw,24rem);
  width:100%
}
.kitchen-item .placeholder-center{
  padding:var(--space-10) .8rem
}
.kitchen-item .placeholder-title{
  font-size:1.6rem
}
.kitchen-item .placeholder-label{
  font-size:var(--text-label);
  letter-spacing:.04em
}
.kitchen-item h3{
  font-family:var(--sans);
  font-size:var(--text-small);
  letter-spacing:.1em;
  font-weight:700;
  margin:var(--space-4) 0 var(--space-2);
  line-height:1.5
}
.kitchen-item p{
  font-size:var(--text-body);
  color:var(--muted)
}
.grill{
  background:var(--olive);
  color:var(--ivory)
}
.grill .section-copy>p:not(.eyebrow){
  color:var(--beige)
}
.grill .photo-placeholder{
  min-height:28rem;
  background:var(--surface-grill);
  color:var(--ivory);
  border-color:var(--line-on-dark)
}
.grill .text-link:hover{
  color:var(--sand)
}
.grill :focus-visible,.site-footer :focus-visible{
  outline-color:var(--sand)
}
.steps{
  display:grid;
  gap:var(--space-6);
  margin-top:var(--space-12);
  padding-top:var(--space-8);
  border-top:1px solid var(--line-on-dark)
}
.steps>li{
  display:flex;
  align-items:baseline;
  gap:var(--space-4)
}
.steps span{
  font:400 1.5rem var(--serif);
  color:var(--sand)
}
.steps p{
  font-size:var(--text-body)
}
.garden-heading{
  max-width:52rem;
  margin-bottom:var(--space-12)
}
.garden-heading h2 em{
  color:var(--olive)
}
.garden-panorama{
  min-height:24rem;
  background:var(--surface-garden)
}
.garden-bottom{
  display:flex;
  flex-direction:column;
  gap:var(--space-6);
  margin-top:var(--space-8)
}
.reviews{
  border-block:1px solid var(--line);
  text-align:center
}
.reviews h2{
  margin-bottom:var(--space-8)
}
.review-placeholder{
  max-width:45rem;
  margin:0 auto var(--space-6);
  padding:var(--space-8);
  border-block:1px dashed var(--line);
  color:var(--muted);
  font-size:var(--text-body)
}
.review-placeholder .eyebrow{
  margin-bottom:var(--space-3);
  color:var(--terracotta-ink)
}
.celebrate .photo-placeholder{
  min-height:26rem;
  background:var(--beige)
}
.reservation{
  text-align:center;
  background:var(--sand)
}
.reservation h2{
  max-width:55rem;
  margin:0 auto var(--space-8)
}
.reservation .actions{
  justify-content:center
}
.reservation p{
  margin:var(--space-6) auto 0;
  font-size:var(--text-body)
}
.site-footer{
  background:var(--olive);
  color:var(--ivory);
  padding:var(--space-16) var(--gutter) var(--space-28)
}
.footer-grid{
  max-width:var(--content);
  margin:auto;
  display:grid;
  gap:var(--space-10)
}
.footer-grid h2{
  font:600 .875rem var(--sans);
  letter-spacing:.13em;
  margin-bottom:var(--space-4)
}
.footer-grid p,.footer-grid address{
  font-size:var(--text-body);
  font-style:normal
}
.footer-grid .wordmark{
  font-size:2.5rem;
  display:inline-block;
  margin-bottom:var(--space-4)
}
.footer-grid a:not(.wordmark){
  display:inline-block;
  min-height:44px
}
.footer-grid a:hover{
  text-decoration:underline
}
.footer-grid nav{
  display:flex;
  flex-direction:column;
  align-items:start;
  font-size:var(--text-small)
}
.footer-grid .text-link{
  font-size:var(--text-small)
}
.footer-bottom{
  max-width:var(--content);
  margin:var(--space-12) auto 0;
  padding-top:var(--space-6);
  border-top:1px solid var(--line-on-dark);
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-4) var(--space-8);
  font-size:var(--text-small);
  align-items:center
}
.footer-bottom button{
  border:0;
  background:none;
  color:inherit;
  padding:0;
  min-height:44px;
  font-size:inherit;
  text-decoration:underline;
  text-underline-offset:4px
}
.footer-bottom>span{
  margin-right:auto
}
.mobile-actions{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  z-index:40;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr)) 1.5fr;
  border-top:1px solid var(--line);
  background:var(--ivory);
  padding:var(--space-2) var(--space-2) max(var(--space-2),env(safe-area-inset-bottom));
  gap:.3rem
}
.mobile-actions a{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-2);
  font-size:var(--text-small);
  font-weight:600
}
.mobile-actions .reserve{
  background:var(--olive);
  color:var(--ivory)
}
dialog{
  max-width:min(32rem,calc(100% - 2.5rem));
  padding:var(--space-8);
  border:1px solid var(--line);
  background:var(--ivory);
  color:var(--ink)
}
dialog::backdrop{
  background:rgb(38 37 33 / .55)
}
dialog h2{
  font-size:2.6rem;
  margin-bottom:var(--space-5)
}
dialog .button{
  margin-top:var(--space-6)
}
dialog p{
  font-size:var(--text-body)
}
@media(min-width:48rem){
  :root{
    --gutter:2.5rem;
    --section:6rem
  }
  .hero{
    grid-template-columns:1.05fr 1fr;
    gap:var(--space-8);
    padding-top:var(--space-12);
    align-items:center
  }
  .hero h1{
    font-size:clamp(3rem,6.5vw,6.4rem)
  }
  .hero-photo{
    min-height:37rem
  }
  .hero-note{
    margin-left:-1.5rem;
    margin-right:var(--space-8)
  }
  .hero .actions{
    gap:var(--space-4)
  }
  .split{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--space-12)
  }
  .experience-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--space-6)
  }
  .experience-card .photo-placeholder{
    min-height:20rem
  }
  .experience-card .placeholder-title{
    font-size:2rem
  }
  .experience-card h3{
    font-size:2rem
  }
  .kitchen-grid{
    gap:var(--space-8)
  }
  .kitchen-item .placeholder-title{
    font-size:2.2rem
  }
  .steps{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .garden-panorama{
    min-height:34rem
  }
  .garden-bottom{
    flex-direction:row;
    justify-content:space-between;
    align-items:start;
    gap:var(--space-12)
  }
  .garden-bottom p{
    max-width:43rem
  }
  .garden-bottom .text-link{
    white-space:nowrap
  }
  .footer-grid{
    grid-template-columns:1.4fr 1fr;
    gap:var(--space-12)
  }
  .brand-line{
    gap:var(--space-10);
    margin-top:var(--space-14)
  }
}
@media(min-width:64rem){
  :root{
    --section:7rem
  }
  .hero{
    gap:var(--space-16)
  }
  .hero-note{
    max-width:23rem
  }
  .intro-photo{
    min-height:29rem
  }
  .split{
    gap:var(--space-24)
  }
  .feature .photo-placeholder{
    min-height:40rem
  }
  .feature .split{
    grid-template-columns:1.1fr 1fr
  }
  .kitchen-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))
  }
  .kitchen-item:nth-child(even){
    padding-top:var(--space-12)
  }
  .grill .photo-placeholder{
    min-height:35rem
  }
  .garden-heading{
    margin-left:8.333%
  }
  .footer-grid{
    grid-template-columns:1.5fr 1fr 1.2fr .8fr;
    gap:var(--space-10)
  }
}
@media(min-width:80rem){
  .mobile-actions{
    display:none
  }
  .site-footer{
    padding-bottom:var(--space-8)
  }
  :root{
    --gutter:3.5rem;
    --section:8rem
  }
  .site-header{
    padding-inline:var(--space-10);
    min-height:6rem
  }
  .wordmark{
    font-size:2.1rem
  }
  .menu-toggle{
    display:none
  }
  .navigation{
    display:flex;
    position:static;
    max-height:none;
    overflow:visible;
    align-items:center;
    gap:var(--space-6);
    padding:0;
    border:0
  }
  .navigation>a:not(.button){
    font-size:var(--text-small);
    display:flex;
    align-items:center
  }
  .navigation.is-open{
    flex-direction:row;
    gap:var(--space-6)
  }
  .hero{
    min-height:calc(100svh - 6rem);
    padding-top:var(--space-8);
    padding-bottom:var(--space-4)
  }
  .hero-copy{
    padding-left:var(--space-8)
  }
  .hero-photo{
    min-height:43rem
  }
  .hero-visual{
    padding-bottom:var(--space-4)
  }
  .hero .actions{
    gap:var(--space-6)
  }
  .hero-note{
    margin-top:-5.5rem
  }
  .hero .scroll-link{
    margin-top:var(--space-12)
  }
  .experience-card .photo-placeholder{
    min-height:26rem
  }
  .experience-card:nth-child(2){
    padding-top:var(--space-12)
  }
  .intro .split{
    grid-template-columns:1fr .85fr
  }
}
@media(min-width:100rem){
  .hero{
    gap:var(--space-24)
  }
  .hero-photo{
    min-height:48rem
  }
  .hero-copy{
    padding-left:var(--space-12)
  }
}
@media(max-width:25rem){
  .hero h1{
    font-size:2.95rem
  }
  .wordmark{
    font-size:1.75rem
  }
  .brand-line{
    gap:.65rem;
    font-size:1.1rem
  }
  .kitchen-grid{
    grid-template-columns:1fr
  }
}
@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto
  }
  *,*::before,*::after{
    transition:none!important;
    animation:none!important
  }
}
/* Phase 3: layout resilience and accessible interaction spacing. */
.hero>*,.split>*,.experience-grid>*,.kitchen-grid>*,.footer-grid>*{
  min-width:0
}
.photo-placeholder{
  width:100%;
  min-width:0
}
.placeholder-center{
  width:100%;
  min-width:0
}
.placeholder-note{
  max-width:34rem;
  overflow-wrap:anywhere;
  font-size:var(--text-small)
}
.placeholder-title{
  overflow-wrap:anywhere
}
.button,.text-link{
  max-width:100%;
  overflow-wrap:anywhere
}
.button span,.text-link span{
  flex-shrink:0
}
.wordmark span{
  letter-spacing:.08em
}
.steps{
  list-style:none;
  padding-inline:0;
  margin-bottom:0
}
.footer-grid a{
  overflow-wrap:anywhere
}
.site-footer{
  scroll-margin-bottom:var(--action-height);
  padding-bottom:calc(var(--action-height) + var(--space-8))
}
html{
  scroll-padding-bottom:calc(var(--action-height) + env(safe-area-inset-bottom))
}
.site-header:focus-within{
  z-index:45
}
.navigation a:focus-visible{
  outline-offset:2px
}
.hero-photo .placeholder-center{
  padding-block:7rem 4rem
}
.hero-note{
  isolation:isolate
}
.reviews{
  padding-block:var(--space-16)
}
.breakfast-layout>.section-copy{
  grid-row:1
}
@media(min-width:48rem){
  .breakfast-layout>.section-copy{
    grid-column:2
  }
  .breakfast-layout>.photo-placeholder{
    grid-column:1;
    grid-row:1
  }
}
@media(max-width:47.999rem){
  .hero{
    padding-top:var(--space-8);
    gap:var(--space-8)
  }
  .hero-description{
    margin-block:var(--space-6)
  }
  .scroll-link{
    margin-top:var(--space-6)
  }
  .hero-photo{
    min-height:26rem
  }
  .feature .photo-placeholder{
    min-height:25rem
  }
  .experience-card .photo-placeholder{
    min-height:17rem
  }
  .intro-photo,.bread .photo-placeholder,.celebrate .photo-placeholder{
    min-height:20rem
  }
  .actions{
    gap:var(--space-4)
  }
  .actions>.button{
    width:100%
  }
  .garden-heading{
    margin-bottom:var(--space-8)
  }
  .kitchen-item .placeholder-center{
    padding:var(--space-6) var(--space-3)
  }
  .kitchen-item .placeholder-note{
    font-size:var(--text-label)
  }
  .brand-line>span{
    white-space:nowrap
  }
}
/* Reflow for enlarged text: wrap content instead of clipping the page. */
h1,h2,h3{overflow-wrap:anywhere}
.site-header{flex-wrap:wrap}
.wordmark{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.menu-toggle{flex-shrink:0}
.mobile-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.5fr)}
.mobile-actions a{min-width:0;overflow-wrap:anywhere}
.intro{padding-bottom:calc(var(--section) / 2)}
.intro + .section{padding-top:calc(var(--section) / 2)}
.hero-note{grid-template-columns:minmax(0,1fr) auto}
.hero-note>span,.hero-note p{min-width:0;overflow-wrap:anywhere}
@media(max-width:20rem){
 .site-header{position:relative}
 html{scroll-padding-top:1rem}
 .hero-note{margin-inline:0;padding:var(--space-4)}
 .hero-note p{font-size:1.5rem}
}
.steps>li,.steps p{min-width:0;overflow-wrap:anywhere}
p,.eyebrow{overflow-wrap:anywhere}
.experience-header>*{min-width:0;max-width:100%}
.navigation{max-width:100%;flex-wrap:wrap}
@media(max-width:47.999rem){.hero-note{margin-inline:0;padding:var(--space-4)}}


/* Final Phase 3 fixes: disclosure scrolling, enlarged labels and focus clearance. */
.navigation.is-open>*{flex-shrink:0}
.placeholder-center>*{max-width:100%;min-width:0;overflow-wrap:anywhere}
.footer-grid .wordmark{min-height:44px}
.site-header.is-tall{position:relative}
@media(min-width:80rem){.navigation.is-open{flex-wrap:wrap}}
