:root{--site-bg:#ffffff;--site-text:#212121;--site-accent:#212121;--site-font:Inter, ui-sans-serif, system-ui, sans-serif;--site-heading-font:Inter, ui-sans-serif, system-ui, sans-serif;--site-on-accent:#ffffff;--site-radius:14px;}
/* Published site design system v2.
   Theme tokens (--site-*) are generated per document; everything else is
   derived here with color-mix() so any palette stays coherent. No scripts,
   no inline styles and no remote fonts are required. */
:root{
  --bg:var(--site-bg);--fg:var(--site-text);--accent:var(--site-accent);--on-accent:var(--site-on-accent,#fff);
  --font:var(--site-font);--font-display:var(--site-heading-font,var(--site-font));
  --r:var(--site-radius,14px);--r-lg:calc(var(--r) * 1.6);--r-sm:calc(var(--r) * .6);
  --muted:color-mix(in srgb,currentColor 70%,transparent);
  --line:color-mix(in srgb,currentColor 13%,transparent);
  --line-strong:color-mix(in srgb,currentColor 22%,transparent);
  --card:color-mix(in srgb,currentColor 4%,transparent);
  --card-strong:color-mix(in srgb,currentColor 7%,transparent);
  --accent-soft:color-mix(in srgb,var(--accent) 12%,var(--bg));
  --accent-tint:color-mix(in srgb,var(--accent) 24%,var(--bg));
  --accent-glow:color-mix(in srgb,var(--accent) 20%,transparent);
  --shadow-sm:0 1px 2px color-mix(in srgb,#0b0d10 6%,transparent),0 4px 14px -6px color-mix(in srgb,#0b0d10 14%,transparent);
  --shadow:0 2px 4px color-mix(in srgb,#0b0d10 4%,transparent),0 24px 48px -24px color-mix(in srgb,#0b0d10 22%,transparent);
  --container:1240px;--gutter:clamp(20px,5vw,64px);
  --space-section:clamp(64px,8vw,112px);
  --step--1:clamp(.82rem,.8rem + .1vw,.88rem);
  --step-0:clamp(1rem,.96rem + .2vw,1.09rem);
  --step-1:clamp(1.15rem,1.07rem + .4vw,1.38rem);
  --step-2:clamp(1.4rem,1.2rem + .9vw,1.9rem);
  --step-3:clamp(2rem,1.55rem + 2.1vw,3.3rem);
  --step-4:clamp(2.6rem,1.7rem + 4.3vw,5.6rem);
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:var(--step-0);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:4px}
::selection{background:var(--accent-tint);color:var(--fg)}
h1,h2,h3,h4,p{overflow-wrap:break-word}
h1,h2,h3{hyphens:auto;-webkit-hyphens:auto}
h1,h2,h3{font-family:var(--font-display);text-wrap:balance}
h1,h2{white-space:pre-line}
h1{font-size:var(--step-4);font-weight:600;letter-spacing:-.04em;line-height:1.02;margin:0 0 .45em}
h2{font-size:var(--step-3);font-weight:600;letter-spacing:-.032em;line-height:1.08;margin:0 0 .5em}
h3{font-size:var(--step-1);font-weight:600;letter-spacing:-.018em;line-height:1.25;margin:0 0 .45em}
.skip-link{position:absolute;left:1rem;top:-5rem;background:var(--fg);color:var(--bg);padding:12px 20px;z-index:50;border-radius:var(--r-sm)}
.skip-link:focus{top:1rem}

/* Header and navigation: CSS-only mobile menu built on <details>. */
.site-header{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(1.6) blur(16px);backdrop-filter:saturate(1.6) blur(16px);border-bottom:1px solid color-mix(in srgb,var(--fg) 9%,transparent)}
.header-inner{max-width:calc(var(--container) + 2 * var(--gutter));margin:auto;padding:16px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:72px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--font-display);font-size:1.18rem;font-weight:700;letter-spacing:-.025em;line-height:1.1;min-width:0}
.brand-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;flex:none;border-radius:calc(var(--r) * .75);background:var(--accent);color:var(--on-accent);font-size:20px;line-height:1;transition:transform .5s var(--ease)}
.brand:hover .brand-mark{transform:rotate(90deg)}
.nav-desktop nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.nav-desktop a,.nav-mobile nav a{text-decoration:none;font-size:.92rem;font-weight:500;padding:8px 14px;border-radius:999px;color:color-mix(in srgb,var(--fg) 78%,transparent);transition:background .2s,color .2s}
.nav-desktop a:hover{background:color-mix(in srgb,var(--fg) 7%,transparent);color:var(--fg)}
.nav-desktop a:last-child{background:var(--fg);color:var(--bg);margin-left:8px;padding-inline:18px}
.nav-desktop a:last-child:hover{background:var(--accent);color:var(--on-accent)}
.nav-mobile{display:none;position:relative}
.nav-mobile summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;border:1px solid color-mix(in srgb,var(--fg) 16%,transparent);font-size:.9rem;font-weight:600;user-select:none}
.nav-mobile summary::-webkit-details-marker{display:none}
.nav-icon{display:grid;gap:5px;width:18px}
.nav-icon i{display:block;height:2px;border-radius:2px;background:currentColor;transition:transform .25s var(--ease)}
.nav-mobile[open] .nav-icon i:first-child{transform:translateY(3.5px) rotate(45deg)}
.nav-mobile[open] .nav-icon i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.nav-mobile nav{position:absolute;right:0;top:calc(100% + 12px);width:min(320px,calc(100vw - 2 * var(--gutter)));display:grid;gap:2px;padding:10px;background:var(--bg);border:1px solid color-mix(in srgb,var(--fg) 10%,transparent);border-radius:var(--r-lg);box-shadow:var(--shadow);animation:menu-in .25s var(--ease)}
.nav-mobile nav a{font-size:1.05rem;padding:13px 16px;border-radius:var(--r-sm);color:var(--fg)}
.nav-mobile nav a:hover{background:color-mix(in srgb,var(--fg) 6%,transparent)}
@keyframes menu-in{from{opacity:0;transform:translateY(-6px)}}

/* Sections */
.section{position:relative;padding:var(--space-section) var(--gutter);scroll-margin-top:84px}
.section-inner{max-width:var(--container);margin:auto;position:relative}
.section-copy{max-width:700px}
.has-items>.section-inner>.section-copy,.section-gallery>.section-inner>.section-copy{margin-bottom:clamp(36px,5vw,60px)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;font-size:.74rem;font-weight:700;letter-spacing:.16em;margin:0 0 20px;color:color-mix(in srgb,var(--accent) 75%,currentColor)}
.eyebrow span{height:7px;width:7px;flex:none;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px var(--accent-glow)}
.body-copy{white-space:pre-line;font-size:var(--step-0);line-height:1.75;color:var(--muted);margin:0;max-width:62ch}
.section-copy>.body-copy{font-size:var(--step-1);line-height:1.65}
.button{display:inline-flex;align-items:center;gap:14px;padding-block:15px;padding-inline:26px 18px;border-radius:max(var(--r-sm),min(999px,calc(var(--r) * 4)));margin-top:32px;background:var(--accent);color:var(--on-accent);text-decoration:none;font-size:.95rem;font-weight:600;letter-spacing:-.005em;box-shadow:0 10px 26px -12px var(--accent),inset 0 1px 0 rgb(255 255 255/.16);transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s}
.button span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--on-accent) 16%,transparent);font-size:14px;transition:transform .3s var(--ease)}
.button:hover{transform:translateY(-2px);box-shadow:0 18px 34px -14px var(--accent),inset 0 1px 0 rgb(255 255 255/.2)}
.button:hover span{transform:rotate(45deg)}
.text-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-weight:600;font-size:.95rem;text-decoration:none;color:color-mix(in srgb,var(--accent) 80%,currentColor)}
.text-link span{transition:transform .25s var(--ease)}
.text-link:hover span{transform:translateX(4px)}
/* Right-to-left sites: the arrows after links and buttons point the way the line reads (hover moves them along too). */
:is(.button,.text-link)>span[aria-hidden]:dir(rtl){scale:-1 1}
.section-image{overflow:hidden;border-radius:var(--r-lg);box-shadow:var(--shadow)}
.section-image img{width:100%;aspect-ratio:16/10;object-fit:cover}

/* Hero */
.section-hero{padding-top:clamp(56px,7vw,104px);padding-bottom:clamp(64px,8vw,120px);overflow:hidden;background:radial-gradient(60% 70% at 92% 8%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),radial-gradient(40% 45% at 0% 30%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 70%)}
.section-hero>.section-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,96px)}
.section-hero .section-copy{max-width:640px;animation:rise .9s var(--ease) both}
.section-hero .section-copy>.body-copy{font-size:var(--step-1);max-width:34em}
.hero-figure{position:relative;animation:rise 1.1s .1s var(--ease) both}
.hero-figure::before{content:"";position:absolute;inset:auto -6% -7% 12%;height:70%;border-radius:var(--r-lg);background:linear-gradient(135deg,var(--accent-tint),color-mix(in srgb,var(--accent) 45%,var(--bg)));z-index:0;transform:rotate(-3deg)}
.hero-figure img{position:relative;z-index:1;width:100%;aspect-ratio:4/4.6;object-fit:cover;border-radius:var(--r-lg);box-shadow:var(--shadow)}
.hero-points{list-style:none;padding:0;margin:44px 0 0;display:flex;flex-wrap:wrap;gap:16px 40px;border-top:1px solid var(--line);padding-top:28px}
.hero-points li{display:grid;gap:2px}
.hero-points strong{font-family:var(--font-display);font-size:var(--step-2);letter-spacing:-.03em;line-height:1.1}
.hero-points span{font-size:var(--step--1);color:var(--muted)}
.hero-art{min-height:460px;position:relative;isolation:isolate;background:var(--accent-soft);border-radius:200px 200px var(--r-lg) var(--r-lg);overflow:hidden;animation:rise 1.1s .1s var(--ease) both}
.art-orbit{position:absolute;width:380px;height:380px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:50%;left:30%;top:18%;animation:float 14s ease-in-out infinite alternate}
.art-arch{width:61%;height:74%;position:absolute;top:13%;left:15%;border-radius:200px 200px 4px 4px;background:var(--accent-tint);overflow:hidden}
.art-sun{position:absolute;top:15%;right:16%;width:70px;height:70px;background:color-mix(in srgb,#fff 70%,var(--accent));border-radius:50%;animation:float 9s ease-in-out infinite alternate}
.art-hill{position:absolute;bottom:-23%;left:-30%;height:70%;width:150%;background:color-mix(in srgb,var(--accent) 85%,#000);border-radius:50% 50% 0 0;transform:rotate(28deg)}
.art-hill-back{background:color-mix(in srgb,var(--accent) 55%,var(--bg));bottom:-9%;left:10%;transform:rotate(-30deg)}
.art-caption{position:absolute;bottom:26px;left:26px;font-size:.72rem;letter-spacing:.04em;color:color-mix(in srgb,var(--accent) 60%,#000)}
.art-corner{position:absolute;right:24px;top:24px;font-size:.75rem;color:color-mix(in srgb,var(--accent) 60%,#000)}
/* Centered hero with an image becomes an immersive full-bleed cover. */
.section-hero.align-center.has-image{min-height:min(92vh,880px);display:flex;align-items:flex-end;color:#fff;background:#111;padding-top:clamp(120px,16vw,220px)}
.section-hero.align-center.has-image>.section-inner{display:block;width:100%;position:static}
.section-hero.align-center.has-image .hero-figure{position:absolute;inset:0;animation:zoom 2.4s var(--ease) both}
.section-hero.align-center.has-image .hero-figure::before{content:"";inset:0;height:auto;transform:none;border-radius:0;z-index:2;background:radial-gradient(70% 60% at 50% 55%,rgb(0 0 0/.34),transparent 75%),linear-gradient(180deg,rgb(0 0 0/.3) 0%,rgb(0 0 0/.14) 40%,rgb(0 0 0/.66) 100%)}
.section-hero.align-center.has-image .hero-figure img{position:absolute;inset:0;height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none}
.section-hero.align-center.has-image .section-copy{position:relative;z-index:3;max-width:900px;margin:auto}
.section-hero.align-center.has-image .body-copy{color:rgb(255 255 255/.9);text-shadow:0 1px 2px rgb(0 0 0/.35),0 2px 22px rgb(0 0 0/.45)}
.section-hero.align-center.has-image .eyebrow{color:#fff}
.section-hero.align-center.has-image h1{text-shadow:0 2px 30px rgb(0 0 0/.25)}
.section-hero.align-center.has-image .hero-points{border-color:rgb(255 255 255/.25);justify-content:center}
.section-hero.align-center.has-image .hero-points span{color:rgb(255 255 255/.78)}
.section-hero.align-center:not(.has-image)>.section-inner{grid-template-columns:1fr}
.section-hero.align-center:not(.has-image) .hero-art{display:none}
.section-hero.align-center:not(.has-image) .section-copy{max-width:880px;margin:auto}
.section-hero.align-center .hero-points{justify-content:center}
.section-notfound{min-height:60vh;display:grid;align-items:center}

/* Text, features, generic items */
.section-text.has-image>.section-inner,.section-cta.has-image>.section-inner,.section-contact.has-image>.section-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,88px);align-items:center}
.section-text.has-image .items,.section-cta.has-image .items,.section-contact.has-image .items{grid-column:1/-1}
.section-text .section-copy,.section-contact .section-copy{max-width:780px}
.section-text.align-center:not(.has-image) .section-copy{max-width:860px}
.section-text.align-center:not(.has-image) h2{font-size:clamp(1.9rem,1.4rem + 2.4vw,3.4rem)}
.items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:clamp(16px,2vw,24px)}
@media (min-width:961px){.items:has(>:nth-child(3):last-child),.items:has(>:nth-child(6):last-child),.items:has(>:nth-child(9):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.items:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}}
.section-actions{margin-top:clamp(32px,4vw,48px)}
.section-actions .button{margin-top:0}
.align-center .section-actions{text-align:center}
.align-right .section-actions{text-align:right}
.item{position:relative;display:flex;flex-direction:column;padding:clamp(24px,2.6vw,34px);border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .4s}
.item:hover{transform:translateY(-4px);box-shadow:var(--shadow);background:var(--card-strong)}
.item img{width:calc(100% + 2 * clamp(24px,2.6vw,34px) - 16px);max-width:none;margin:calc(-1 * clamp(24px,2.6vw,34px) + 8px) calc(-1 * clamp(24px,2.6vw,34px) + 8px) 24px;aspect-ratio:4/3;object-fit:cover;border-radius:calc(var(--r-lg) - 6px)}
.item-marker{display:inline-grid;place-items:center;width:44px;height:44px;margin-bottom:22px;border-radius:calc(var(--r) * .9);background:var(--accent-soft);color:color-mix(in srgb,var(--accent) 80%,var(--fg));font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.02em}
.item img+.item-marker{display:none}
.item-role{margin:-4px 0 10px;font-size:var(--step--1);font-weight:600;color:color-mix(in srgb,var(--accent) 75%,currentColor)}
.item .body-copy{font-size:.97rem}
.item.is-highlight{background:var(--fg);color:var(--bg);border-color:transparent}
.item.is-highlight .item-marker{background:var(--accent);color:var(--on-accent)}
.section-features.align-center .items .item{text-align:left}

/* Gallery: bento layouts for common counts, otherwise an even grid. */
.gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.gallery-item{grid-column:span 2;display:flex;flex-direction:column;gap:14px}
.gallery-item img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-lg);transition:transform .7s var(--ease),filter .5s}
.gallery-item:hover img{transform:scale(1.015);filter:saturate(1.08)}
.gallery-item figcaption{display:grid;gap:2px;padding:0 4px}
.gallery-item figcaption strong{font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:-.01em}
.gallery-item figcaption span{font-size:var(--step--1);color:var(--muted)}
.gallery:has(>:nth-child(3):last-child) .gallery-item:first-child{grid-column:span 4;grid-row:span 2}
.gallery:has(>:nth-child(3):last-child) .gallery-item:first-child img{aspect-ratio:auto;flex:1 1 0;min-height:240px;height:auto}
.gallery:has(>:nth-child(3):last-child) .gallery-item:not(:first-child) img{aspect-ratio:4/3}
.gallery:has(>:nth-child(2):last-child) .gallery-item,.gallery:has(>:nth-child(4):last-child) .gallery-item{grid-column:span 3}
.gallery:has(>:nth-child(2):last-child) .gallery-item img,.gallery:has(>:nth-child(4):last-child) .gallery-item img{aspect-ratio:3/2}
.gallery:has(>:nth-child(5):last-child) .gallery-item:nth-child(-n+2){grid-column:span 3}
.gallery:has(>:nth-child(5):last-child) .gallery-item:nth-child(-n+2) img{aspect-ratio:3/2}
.gallery:has(>:nth-child(6):last-child) .gallery-item:first-child{grid-column:span 4;grid-row:span 2}
.gallery:has(>:nth-child(6):last-child) .gallery-item:first-child img{aspect-ratio:auto;flex:1 1 0;min-height:240px;height:auto}

/* Call to action panel */
.section-cta{margin:clamp(12px,2vw,24px) var(--gutter);border-radius:calc(var(--r-lg) * 1.4);padding-inline:clamp(24px,6vw,96px);overflow:hidden;isolation:isolate;background:radial-gradient(70% 90% at 100% 0%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 65%),radial-gradient(60% 80% at 0% 100%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 60%),var(--accent-soft)}
.section-cta .section-copy{max-width:760px}
.section-cta.align-center .section-copy{margin:auto}
.section-cta h2{font-size:clamp(2rem,1.4rem + 2.8vw,4rem)}

/* Footer */
.section-footer{border-top:1px solid var(--line);margin-top:clamp(24px,4vw,48px);padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(40px,5vw,64px)}
.section-footer>.section-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr);gap:clamp(32px,5vw,80px);align-items:start}
.section-footer:not(.has-items)>.section-inner{grid-template-columns:1fr}
.footer-title{font-family:var(--font-display);font-size:var(--step-2);font-weight:650;letter-spacing:-.03em;line-height:1.15;margin:0 0 12px}
.section-footer .body-copy{font-size:.95rem}
.section-footer .button{margin-top:24px}
.footer-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:22px 32px}
.footer-links li{display:grid;gap:4px;align-content:start}
.footer-links a,.footer-links strong{font-weight:600;font-size:.95rem;text-decoration:none}
.footer-links a:hover{color:color-mix(in srgb,var(--accent) 80%,currentColor);text-decoration:underline}
.footer-links span{font-size:var(--step--1);color:var(--muted);white-space:pre-line}
.site-colophon{max-width:calc(var(--container) + 2 * var(--gutter));padding:20px var(--gutter) 28px;margin:auto;display:flex;gap:24px;justify-content:space-between;font-size:.75rem;letter-spacing:.02em;color:color-mix(in srgb,var(--fg) 55%,transparent);border-top:1px solid color-mix(in srgb,var(--fg) 8%,transparent)}

/* Testimonials */
.quotes{columns:3 300px;column-gap:clamp(16px,2vw,24px)}
.quotes:has(>:nth-child(2):last-child),.quotes:has(>:nth-child(4):last-child){columns:2 300px}
.quotes:has(>:only-child){columns:1;max-width:760px}
.align-center .quotes:has(>:only-child){margin-inline:auto}
.quote{break-inside:avoid;margin:0 0 clamp(16px,2vw,24px);padding:clamp(26px,2.8vw,36px);border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:26px}
.quote blockquote{margin:0}
.quote blockquote p{margin:0;font-size:var(--step-1);line-height:1.55;letter-spacing:-.01em;white-space:pre-line}
.quote blockquote p::before{content:"“";display:block;font-family:Georgia,serif;font-size:3.4rem;line-height:.8;height:.5em;margin-bottom:14px;color:var(--accent)}
.quote figcaption{display:flex;align-items:center;gap:14px}
.avatar{width:48px;height:48px;flex:none;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px var(--bg),0 0 0 4px var(--line)}
.avatar-initial{display:grid;place-items:center;background:var(--accent-tint);color:color-mix(in srgb,var(--accent) 70%,var(--fg));font-weight:700}
.quote-author{display:grid;line-height:1.35}
.quote-author strong{font-size:.98rem}
.quote-author span{font-size:var(--step--1);color:var(--muted)}
.quote.is-highlight{background:var(--accent);color:var(--on-accent);border-color:transparent}
.quote.is-highlight blockquote p::before{color:var(--on-accent);opacity:.6}

/* Pricing */
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:clamp(16px,2vw,24px);align-items:stretch}
.plan{display:flex;flex-direction:column;padding:clamp(28px,3vw,40px);border-radius:var(--r-lg);border:1px solid var(--line-strong);background:var(--bg);color:var(--fg);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.plan:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.plan h3{font-size:1.15rem;margin-bottom:4px}
.plan-role{margin:0;font-size:.92rem;color:var(--muted)}
.plan-price{margin:22px 0 4px;font-family:var(--font-display);font-size:clamp(2.2rem,1.8rem + 1.4vw,3rem);font-weight:650;letter-spacing:-.04em;line-height:1}
.plan-features{list-style:none;margin:24px 0 0;padding:24px 0 0;border-top:1px solid var(--line);display:grid;gap:12px;flex:1;align-content:start}
.plan-features li{position:relative;padding-left:30px;font-size:.96rem;line-height:1.5}
.plan-features li::before{content:"";position:absolute;left:0;top:.2em;width:18px;height:18px;border-radius:50%;background:var(--accent-soft)}
.plan-features li::after{content:"";position:absolute;left:6px;top:calc(.2em + 4px);width:5px;height:8px;border:solid var(--accent);border-width:0 2px 2px 0;transform:rotate(45deg)}
.plan .button{margin-top:30px;justify-content:space-between;background:transparent;color:var(--fg);box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.plan .button span{background:var(--card-strong)}
.plan.is-highlight{background:var(--fg);color:var(--bg);border-color:transparent;box-shadow:var(--shadow);position:relative}
.plan.is-highlight .plan-features li::before{background:color-mix(in srgb,var(--accent) 45%,transparent)}
.plan.is-highlight .plan-features li::after{border-color:var(--bg)}
.plan.is-highlight .button{background:var(--accent);color:var(--on-accent);box-shadow:none}
.plan.is-highlight .button span{background:color-mix(in srgb,var(--on-accent) 16%,transparent)}

/* Stats */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:clamp(20px,3vw,40px)}
.stat{position:relative;padding-top:22px;border-top:2px solid var(--line)}
.stat-value{margin:0;font-family:var(--font-display);font-size:clamp(2.6rem,2rem + 2.6vw,4.4rem);font-weight:650;letter-spacing:-.045em;line-height:1}
.stat::before{content:"";position:absolute;top:-2px;left:0;width:56px;height:2px;background:var(--accent)}
.stat-label{margin:12px 0 0;font-size:.98rem;color:var(--muted);max-width:26ch}
.section-stats:not(.has-items) .section-copy{margin-bottom:0}

/* FAQ */
.section-faq.has-items>.section-inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:clamp(32px,6vw,96px);align-items:start}
.section-faq.has-items .section-copy{position:sticky;top:110px}
.section-faq.align-center.has-items>.section-inner{grid-template-columns:1fr;max-width:860px}
.section-faq.align-center .section-copy{position:static}
.faq-list{display:grid;gap:12px}
.faq-item{border-radius:var(--r);background:var(--card);border:1px solid var(--line);transition:background .3s}
.faq-item[open]{background:var(--card-strong)}
.faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;font-weight:600;font-size:1.04rem;line-height:1.4}
.faq-item summary::-webkit-details-marker{display:none}
.faq-icon{position:relative;flex:none;width:30px;height:30px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-strong)}
.faq-icon::before,.faq-icon::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;background:currentColor;transform:translate(-50%,-50%);transition:transform .3s var(--ease)}
.faq-icon::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-item[open] .faq-icon::after{transform:translate(-50%,-50%) rotate(0)}
.faq-item[open] .faq-icon{background:var(--accent);color:var(--on-accent);box-shadow:none}
.faq-item .body-copy{padding:0 26px 24px;font-size:1rem;text-align:left}

/* Team */
.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:clamp(20px,2.4vw,32px)}
.person img,.person-initial{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-lg);margin-bottom:20px;transition:transform .6s var(--ease)}
.person:hover img{transform:translateY(-4px)}
.person-initial{display:grid;place-items:center;background:linear-gradient(145deg,var(--accent-soft),var(--accent-tint));font-family:var(--font-display);font-size:4rem;font-weight:600;color:color-mix(in srgb,var(--accent) 70%,var(--fg))}
.person h3{margin-bottom:2px}
.person-role{margin:0 0 10px;font-size:.92rem;font-weight:600;color:color-mix(in srgb,var(--accent) 75%,currentColor)}
.person .body-copy{font-size:.95rem}

/* Menu and price lists */
.section-menu.has-image>.section-inner>.section-image{margin-bottom:clamp(32px,4vw,56px)}
.section-menu .section-image img{aspect-ratio:21/9}
.menu-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(32px,5vw,72px) clamp(32px,6vw,96px)}
.menu-groups:has(>:only-child){max-width:820px}
.align-center .menu-groups:has(>:only-child){margin-inline:auto}
.menu-group-title{display:flex;align-items:center;gap:16px;font-size:var(--step-2);margin-bottom:12px}
.menu-group-title::after{content:"";flex:1;height:1px;background:var(--line-strong)}
.menu-list{list-style:none;margin:0;padding:0}
.menu-item{display:flex;gap:18px;padding:18px 0;border-bottom:1px dashed var(--line-strong)}
.menu-item:last-child{border-bottom:0}
.menu-item img{width:76px;height:76px;flex:none;object-fit:cover;border-radius:var(--r)}
.menu-item-text{flex:1;min-width:0}
.menu-item-head{display:flex;align-items:baseline;gap:12px;margin:0}
.menu-item-name{font-family:var(--font-display);font-weight:600;font-size:1.1rem;letter-spacing:-.01em}
.menu-leader{flex:1;border-bottom:1px dotted var(--line-strong);transform:translateY(-4px);min-width:16px}
.menu-item-price{font-weight:700;color:color-mix(in srgb,var(--accent) 80%,currentColor);white-space:nowrap;font-variant-numeric:tabular-nums}
.menu-item-desc{margin:4px 0 0;font-size:.95rem;color:var(--muted);line-height:1.55;white-space:pre-line}
.menu-item-tag{display:inline-block;margin:8px 0 0;padding:2px 10px;border-radius:999px;background:var(--accent-soft);color:color-mix(in srgb,var(--accent) 75%,var(--fg));font-size:.74rem;font-weight:600;letter-spacing:.02em}
.menu-item.is-highlight .menu-item-name::after{content:"✦";margin-left:8px;color:var(--accent);font-size:.8em}

/* Products (display only) */
.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:clamp(24px,3vw,40px) clamp(16px,2vw,24px)}
.product{position:relative;display:flex;flex-direction:column}
.product-photo{position:relative;overflow:hidden;border-radius:var(--r-lg);background:var(--card-strong);aspect-ratio:4/5;margin-bottom:18px}
.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.product:hover .product-photo img{transform:scale(1.05)}
.product.is-highlight .product-photo::after{content:"✦";position:absolute;top:14px;left:14px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:.9rem}
.product-info{display:grid;gap:4px}
.product-role{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.product h3{margin:0;font-size:1.08rem}
.product-link{text-decoration:none}
.product-link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:var(--r-lg)}
.product-link:focus-visible{outline:none}
.product-link:focus-visible::after{outline:3px solid var(--accent);outline-offset:6px}
.product-price{margin:2px 0 0;font-weight:650;font-variant-numeric:tabular-nums}
.product .body-copy{font-size:.92rem;line-height:1.6;margin-top:4px}
.product-cta{margin-top:10px;font-size:.9rem;font-weight:600;color:color-mix(in srgb,var(--accent) 80%,currentColor)}

/* Logos */
.section-logos{padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(40px,5vw,64px)}
.section-logos .section-copy{margin-bottom:28px !important;max-width:none}
.section-logos h2{font-size:var(--step-1);font-weight:600;letter-spacing:-.01em}
.logos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px clamp(32px,5vw,64px)}
.align-center .logos{justify-content:center}
.logos li{opacity:.62;transition:opacity .3s}
.logos li:hover{opacity:1}
.logos img{max-height:38px;width:auto;filter:grayscale(1)}
.logo-word{font-family:var(--font-display);font-size:clamp(1.15rem,1rem + .6vw,1.5rem);font-weight:700;letter-spacing:-.03em;white-space:nowrap}

/* Split rows */
.split-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px);align-items:center}
.section-split:not(.has-image) .split-intro{grid-template-columns:1fr}
.section-split.align-right .split-intro .section-image{order:-1}
.section-split.align-right .section-copy{text-align:left;margin-left:0}
.section-split .section-image img{aspect-ratio:5/4}
.split-intro+.split-rows{margin-top:clamp(56px,8vw,112px)}
.section-split:not(.has-image) .split-intro+.split-rows{margin-top:clamp(24px,3vw,40px)}
.split-rows{display:grid;gap:clamp(56px,8vw,112px)}
.split-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
.split-row:nth-child(even) .split-media{order:2}
.split-media img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:var(--r-lg);box-shadow:var(--shadow)}
.split-text h3{font-size:var(--step-2);letter-spacing:-.028em}
.split-text .body-copy{font-size:1.05rem}
.split-row:not(:has(.split-media)){grid-template-columns:1fr}

/* Banner / announcement */
.section-banner{padding:14px var(--gutter);background:var(--accent);color:var(--on-accent)}
.section-banner>.section-inner{display:flex;align-items:center;justify-content:center;gap:12px 24px;flex-wrap:wrap;text-align:center}
.banner-text{margin:0;display:flex;align-items:center;justify-content:center;gap:8px 14px;flex-wrap:wrap;font-size:.95rem;line-height:1.4}
.banner-tag{padding:3px 10px;border-radius:999px;background:color-mix(in srgb,var(--on-accent) 18%,transparent);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.banner-text strong{font-weight:650}
.banner-body{opacity:.85}
.section-banner .button{margin:0;padding:7px 8px 7px 16px;font-size:.85rem;background:var(--on-accent);color:var(--accent);box-shadow:none;gap:10px}
.section-banner .button span{width:20px;height:20px;font-size:11px;background:color-mix(in srgb,var(--accent) 14%,transparent)}
.section-banner.padding-large{padding-top:28px;padding-bottom:28px}
.section-banner.padding-large .banner-text{font-size:var(--step-1)}

/* Alignment and spacing modifiers */
.align-center>.section-inner>.section-copy,.align-center .split-intro .section-copy{text-align:center;margin-left:auto;margin-right:auto}
.align-center .section-copy .body-copy{margin-left:auto;margin-right:auto}
.align-right>.section-inner>.section-copy{text-align:right;margin-left:auto}
.align-right .section-copy .body-copy{margin-left:auto}
.align-right .eyebrow{flex-direction:row-reverse}
.padding-small{padding-top:clamp(36px,4vw,52px);padding-bottom:clamp(36px,4vw,52px)}
.padding-medium{padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}
.padding-large{padding-top:clamp(84px,11vw,152px);padding-bottom:clamp(84px,11vw,152px)}
.section-banner.padding-small,.section-banner.padding-medium{padding-top:14px;padding-bottom:14px}

/* Motion: entrance on load, gentle scroll reveal where supported. */
@keyframes rise{from{opacity:0;transform:translateY(22px)}}
@keyframes zoom{from{transform:scale(1.06)}}
@keyframes float{to{transform:translate(-14px,10px)}}
@keyframes reveal{from{transform:translateY(32px)}}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .item,.quote,.plan,.stat,.person,.product,.gallery-item,.split-row,.menu-group,.faq-item,.section-image{animation:reveal both var(--ease);animation-timeline:view();animation-range:entry 0% entry 40%}
  }
}

@media (max-width:960px){
  .nav-desktop{display:none}
  .nav-mobile{display:block}
  .section-hero>.section-inner,.section-text.has-image>.section-inner,.section-cta.has-image>.section-inner,.section-contact.has-image>.section-inner,.split-intro,.split-row,.section-faq.has-items>.section-inner,.section-footer>.section-inner{grid-template-columns:1fr}
  .split-row:nth-child(even) .split-media{order:0}
  .section-faq.has-items .section-copy{position:static}
  .hero-figure img{aspect-ratio:4/3.4}
  .hero-art{min-height:340px;max-width:560px;width:100%}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery .gallery-item,.gallery:has(>:nth-child(3):last-child) .gallery-item:first-child,.gallery:has(>:nth-child(6):last-child) .gallery-item:first-child,.gallery:has(>:nth-child(2):last-child) .gallery-item,.gallery:has(>:nth-child(4):last-child) .gallery-item,.gallery:has(>:nth-child(5):last-child) .gallery-item:nth-child(-n+2){grid-column:span 1;grid-row:auto}
  .gallery .gallery-item:first-child:nth-last-child(odd){grid-column:1/-1}
  .gallery .gallery-item img,.gallery:has(>:nth-child(3):last-child) .gallery-item:first-child img,.gallery:has(>:nth-child(6):last-child) .gallery-item:first-child img{aspect-ratio:4/5;min-height:0;height:auto;flex:none}
  .gallery .gallery-item:first-child:nth-last-child(odd) img{aspect-ratio:16/10}
}
@media (max-width:600px){
  body{line-height:1.6}
  .banner-body{display:none}
  .banner-text{font-size:.88rem}
  .section-banner>.section-inner{gap:10px}
  .header-inner{min-height:64px;padding-block:12px}
  .brand{font-size:1.05rem}
  .brand-mark{width:30px;height:30px;font-size:17px}
  .section-hero{padding-top:40px}
  .section-hero.align-center.has-image{min-height:86vh;padding-bottom:56px}
  .hero-figure::before{inset:auto -3% -4% 8%}
  .hero-points{gap:16px 28px}
  .section-copy>.body-copy{font-size:1.08rem}
  .button{width:100%;justify-content:space-between}
  .section-banner .button,.plan .button,.section-actions .button{width:auto}
  .section-cta{margin-inline:12px;padding-inline:24px}
  .gallery{grid-template-columns:1fr}
  .gallery .gallery-item img,.gallery .gallery-item:first-child:nth-last-child(odd) img{aspect-ratio:4/3}
  .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}
  .product h3{font-size:.98rem}
  .product-role{font-size:.66rem;letter-spacing:.06em}
  .product .body-copy{display:none}
  .quotes{columns:1}
  .menu-item img{width:60px;height:60px}
  .logos{justify-content:center;gap:20px 32px}
  .site-colophon{flex-direction:column;gap:6px}
  .faq-item summary{padding:18px 20px}
  .faq-item .body-copy{padding:0 20px 20px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
@media print{
  .site-header,.button,.site-colophon,.section-banner{display:none}
  .section{break-inside:avoid;padding:28px 0}
  .hero-art{min-height:260px}
  .section-cta{margin:0}
  .section-hero.align-center.has-image{color:inherit;background:none;min-height:0}
}

/* Design engine v2 theme tokens. */:root{--space-section:clamp(48px,6vw,80px);--gutter:clamp(16px,4vw,48px);}

/* Self-hosted OFL fonts: theme fonts. */@font-face{font-family:"Inter Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fonts/inter-latin-wght-normal.3100e775e8616cd2.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Inter Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fonts/inter-latin-ext-wght-normal.34b9c504cab7a73e.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Inter Fallback";src:local("Arial"),local("Liberation Sans"),local("Arimo");size-adjust:106.86%;ascent-override:90.68%;descent-override:22.55%;line-gap-override:0.00%}

/* Design engine v2 base: palette roles, tones, widths and the shared layout
   primitives (split, asymmetric, sticky, columns, grid, bento, masonry,
   carousel, overlay). Appended only for documents that use a v2 feature.
   Layouts respond to their section's width through container queries. */
:root{--surface:var(--site-surface,color-mix(in srgb,var(--site-text) 5%,var(--site-bg)));--on-surface:var(--site-on-surface,var(--site-text));--contrast:var(--site-contrast,color-mix(in srgb,var(--site-text) 92%,#000));--on-contrast:var(--site-on-contrast,var(--site-bg));--secondary:var(--site-secondary,var(--site-accent));--on-secondary:var(--site-on-secondary,var(--site-on-accent,#fff))}
.tone-surface{--bg:var(--surface);--fg:var(--on-surface)}
.tone-contrast{--bg:var(--contrast);--fg:var(--on-contrast);--accent:color-mix(in srgb,var(--site-accent) 50%,var(--on-contrast));--on-accent:var(--contrast)}
.tone-accent{--bg:var(--site-accent);--fg:var(--site-on-accent,#fff);--accent:var(--site-on-accent,#fff);--on-accent:var(--site-accent)}
:is(.tone-surface,.tone-contrast,.tone-accent){background:var(--bg);color:var(--fg);--accent-soft:color-mix(in srgb,var(--accent) 14%,var(--bg));--accent-tint:color-mix(in srgb,var(--accent) 26%,var(--bg));--card:color-mix(in srgb,currentColor 6%,transparent);--card-strong:color-mix(in srgb,currentColor 10%,transparent)}
:is(.tone-contrast,.tone-accent) .eyebrow{color:inherit}
/* Text inks. The renderer replaces these defaults with proportions computed
   per palette and tone band (WCAG AA for small text, 3:1 for display). */
:is(:root,.tone-surface,.tone-contrast,.tone-accent,.section-cta.v2.layout-band){--muted:color-mix(in srgb,currentColor var(--muted-mix,70%),transparent);--accent-ink:color-mix(in srgb,var(--accent) var(--ink-mix,75%),currentColor);--accent-display:color-mix(in srgb,var(--accent) var(--display-mix,100%),currentColor);--tag-ink:color-mix(in srgb,var(--secondary) var(--tag-mix,70%),currentColor)}
:is(.eyebrow,.item-role,.person-role,.text-link,.menu-item-price,.menu-item-tag,.product-cta,.item-marker){color:var(--accent-ink)}
.width-wide>.section-inner{max-width:calc(var(--container) + 240px)}
.width-full>.section-inner{max-width:none}
.v2{container:section/inline-size;--pad:var(--site-pad,clamp(22px,2.6vw,34px));--gap:var(--site-gap,clamp(14px,2vw,24px))}
.v2 :is(h1,h2){hyphens:manual;-webkit-hyphens:manual}
/* A title with a long word (class fit, --fit-letters set per length) caps
   its display steps so the word fits the section width: it shrinks instead
   of breaking mid-word. */
:root{--fit-5:var(--site-step-5,clamp(3rem,1.8rem + 6vw,7rem));--fit-4:var(--step-4);--fit-3:var(--step-3)}
:is(h1,h2).fit{--fit-cap:calc(100cqi / (var(--fit-letters,12) * .62));--site-step-5:min(var(--fit-5),var(--fit-cap));--step-4:min(var(--fit-4),var(--fit-cap));--step-3:min(var(--fit-3),var(--fit-cap))}
.v2 :is(.eyebrow,.v2-tags li){font-size:.75rem} /* meta text never below 12px */
.v2>.section-inner>.section-copy{margin-bottom:clamp(32px,4.5vw,56px)}
.v2>.section-inner>.section-copy:last-child{margin-bottom:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.v2-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:32px}
.v2-actions .button{margin:0}
.align-center .v2-actions{justify-content:center}
.align-right .v2-actions{justify-content:flex-end}
.button-secondary{padding:15px 24px;background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.button-secondary:hover{box-shadow:inset 0 0 0 1.5px currentColor}
.v2-note{margin:18px 0 0;font-size:var(--step--1);line-height:1.55;color:var(--muted);max-width:62ch;white-space:pre-line}
.align-center .v2-note{margin-inline:auto}
.v2-tail{margin-top:clamp(28px,4vw,48px)}
.v2-tail .v2-actions{margin-top:0}
.v2-tags{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.v2-tags li{padding:2px 10px;border-radius:999px;background:color-mix(in srgb,var(--secondary) 15%,transparent);color:var(--tag-ink);font-size:.74rem;font-weight:650;letter-spacing:.02em;line-height:1.7}
.is-highlight .v2-tags li,:is(.tone-contrast,.tone-accent) .v2-tags li{background:color-mix(in srgb,currentColor 16%,transparent);color:inherit}
.v2-media{position:relative;overflow:hidden;border-radius:var(--r-lg);background:var(--card-strong);aspect-ratio:4/3}
.v2-media img{width:100%;height:100%;object-fit:cover}
.v2-media-empty{background:radial-gradient(80% 90% at 80% 10%,color-mix(in srgb,var(--accent) 45%,transparent),transparent 70%),linear-gradient(160deg,var(--accent-tint),var(--contrast))}
.v2-card{position:relative;display:flex;flex-direction:column;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);overflow:hidden}
.v2-card>.v2-media{border-radius:0}
.v2-card-body{padding:var(--pad);display:flex;flex-direction:column;flex:1}
.v2-card-body .body-copy{font-size:.97rem}
.v2-card.is-highlight{background:var(--fg);color:var(--bg);border-color:transparent}
.v2-card :is(h3,.v2-item-heading){margin-bottom:.35em}
/* An item title promoted to h2 (a section without a heading of its own) keeps the h3 look. */
h2.v2-item-heading{font-size:var(--step-1);font-weight:600;letter-spacing:-.018em;line-height:1.25;margin:0 0 .45em;white-space:normal;hyphens:auto;-webkit-hyphens:auto}
.section-text.align-center:not(.has-image) h2.v2-item-heading{font-size:var(--step-1)}
.plan .v2-item-heading{font-size:1.15rem;margin-bottom:4px}
h2.menu-group-title{letter-spacing:-.018em;line-height:1.25}
.v2-checks{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:10px}
.v2-checks li{position:relative;padding-left:30px;line-height:1.5}
.v2-checks li::before{content:"";position:absolute;left:0;top:.25em;width:18px;height:18px;border-radius:50%;background:var(--accent-soft)}
.v2-checks li::after{content:"";position:absolute;left:6px;top:calc(.25em + 4px);width:5px;height:8px;border:solid var(--accent);border-width:0 2px 2px 0;transform:rotate(45deg)}
.v2-checks span{color:var(--muted)}
.v2-answer{padding:0 26px 24px}
.v2-answer .body-copy{padding:0;font-size:1rem}
.v2-answer .v2-media{margin-bottom:16px;aspect-ratio:16/9}

/* Split, asymmetric and sticky: two columns sized by ratio, media on either side. */
.v2:is(.layout-split,.layout-asymmetric,.layout-sticky,.layout-spotlight)>.section-inner{--a:1fr;--b:1fr;display:grid;grid-template-columns:minmax(0,var(--a)) minmax(0,var(--b));gap:clamp(32px,6vw,96px);align-items:center}
.v2.layout-asymmetric>.section-inner{--a:1fr;--b:2fr;align-items:start}
.v2.ratio-1-1>.section-inner{--a:1fr;--b:1fr}.v2.ratio-3-2>.section-inner{--a:3fr;--b:2fr}.v2.ratio-2-3>.section-inner{--a:2fr;--b:3fr}.v2.ratio-2-1>.section-inner{--a:2fr;--b:1fr}.v2.ratio-1-2>.section-inner{--a:1fr;--b:2fr}
.v2:is(.layout-split,.layout-asymmetric,.layout-sticky,.layout-spotlight)>.section-inner>.section-copy{margin:0}
.v2:is(.layout-split,.layout-asymmetric,.layout-sticky,.layout-spotlight)>.section-inner>:is(.v2-tail,.v2-checks,.v2-captions,.hero-points){grid-column:1/-1}
.v2:is(.layout-split,.layout-asymmetric)>.section-inner>.v2-steps{grid-column:1/-1}
.v2.media-start:is(.layout-split,.layout-asymmetric,.layout-spotlight)>.section-inner>.v2-media{order:-1}
.v2.media-start:is(.layout-split,.layout-asymmetric,.layout-spotlight)>.section-inner{grid-template-columns:minmax(0,var(--b)) minmax(0,var(--a))}
.v2-sticky{position:sticky;top:clamp(88px,10vh,120px);align-self:start;display:grid;gap:clamp(24px,3vw,36px)}
.v2.layout-sticky>.section-inner{align-items:start}
.v2.media-end.layout-sticky>.section-inner>.v2-sticky{order:2}
.v2-steps{display:grid;gap:var(--gap)}
.v2:not(.layout-sticky)>.section-inner>.v2-steps{margin-top:clamp(32px,4vw,56px);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}

/* Grids: columns, bento, masonry. */
.v2-grid{--cols:3;display:grid;gap:var(--gap);grid-template-columns:repeat(var(--cols),minmax(0,1fr))}
.cols-2{--cols:2}.cols-3{--cols:3}.cols-4{--cols:4}
.cols-2 .v2-grid{--cols:2}.cols-3 .v2-grid{--cols:3}.cols-4 .v2-grid{--cols:4}
.layout-bento .v2-grid{--cols:4;grid-auto-flow:dense;grid-auto-rows:minmax(clamp(150px,16vw,220px),auto)}
/* Bento: a large first tile, four small tiles and a wide sixth tile; the last
   tiles of shorter sets stretch so the grid never shows holes. */
.layout-bento .v2-grid>:nth-child(6n+1){grid-column:span 2;grid-row:span 2}
.layout-bento .v2-grid>:nth-child(6n){grid-column:1/-1}
.layout-bento .v2-grid>:nth-child(6n+2):last-child{grid-column:span 2;grid-row:span 2}
.layout-bento .v2-grid>:nth-child(6n+2):nth-last-child(2),.layout-bento .v2-grid>:nth-child(6n+3):last-child{grid-row:span 2}
.layout-bento .v2-grid>:nth-child(6n+4):last-child{grid-column:span 2}
.layout-bento .v2-grid>*{min-height:0;height:100%}
.layout-bento .v2-grid .v2-media{aspect-ratio:auto;flex:1 1 auto;min-height:120px}
.layout-bento .v2-grid .v2-media img{position:absolute;inset:0}
.layout-masonry .v2-grid{display:block;columns:var(--cols) 220px;column-gap:var(--gap)}
.layout-masonry .v2-grid>*{break-inside:avoid;margin:0 0 var(--gap)}
.layout-masonry .v2-grid .v2-media{aspect-ratio:auto}
.layout-masonry .v2-grid .v2-media img{height:auto}
.v2-tile{display:flex;flex-direction:column;gap:12px;margin:0}
.v2-tile figcaption{display:grid;gap:2px;padding:0 2px}
.v2-tile figcaption strong{font-family:var(--font-display);font-size:1.04rem;font-weight:600;letter-spacing:-.01em}
.v2-tile figcaption>span{font-size:var(--step--1);color:var(--muted)}
.v2-tile .v2-tags{margin-top:6px}

/* Carousel: CSS scroll snap; keyboard scrolling on the focusable track;
   native scroll buttons and markers where the browser supports them. */
.carousel{position:relative}
.carousel-track{list-style:none;margin:0;padding:4px 2px 20px;display:grid;grid-auto-flow:column;grid-auto-columns:min(80%,400px);gap:var(--gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;border-radius:var(--r)}
.layout-carousel.width-full .carousel-track,.layout-carousel.width-wide .carousel-track{grid-auto-columns:min(80%,520px)}
.carousel-slide{scroll-snap-align:start;display:flex}
.carousel-slide>*{flex:1}
.carousel-slide .v2-media{aspect-ratio:4/5}
@supports selector(::scroll-button(*)){
  .carousel-track{scroll-marker-group:after;scrollbar-width:none;padding-bottom:6px}
  .carousel-track::scroll-button(*){position:absolute;top:calc(50% - 46px);z-index:2;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--bg);color:var(--fg);box-shadow:var(--shadow-sm),0 0 0 1px var(--line);font-size:1.1rem;cursor:pointer;transition:opacity .2s}
  .carousel-track::scroll-button(left){content:"←"/"Previous";left:8px}
  .carousel-track::scroll-button(right){content:"→"/"Next";right:8px}
  .carousel-track::scroll-button(*):disabled{opacity:0;cursor:default}
  .carousel-track::scroll-button(*):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
  .carousel-track::scroll-marker-group{display:flex;justify-content:center;gap:10px;margin-top:18px}
  .carousel-slide::scroll-marker{content:"";width:9px;height:9px;border-radius:50%;background:color-mix(in srgb,var(--fg) 24%,transparent)}
  .carousel-slide::scroll-marker:target-current{background:var(--accent);width:26px;border-radius:9px}
}

/* Carousel with a media side: the copy becomes a label column beside the
   rail (the rail on the media side), and stacks again in narrow sections. */
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.6fr);grid-template-rows:auto 1fr;column-gap:clamp(28px,4vw,64px);align-items:start}
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.section-copy{grid-column:1;grid-row:1;margin:0}
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.section-copy h2{font-size:var(--step-2);line-height:1.08}
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.section-copy .body-copy{font-size:var(--step-0)}
.v2.layout-carousel:is(.media-start,.media-end)+.v2.layout-carousel:is(.media-start,.media-end)>.section-inner{border-top:1px solid var(--line);padding-top:clamp(28px,4vw,48px)}
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.v2-tail{grid-column:1;grid-row:2;margin-top:clamp(20px,2.4vw,32px)}
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.carousel{grid-column:2;grid-row:1/span 2}
.v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.v2-media{grid-column:1/-1}
.v2.layout-carousel.media-start>.section-inner{grid-template-columns:minmax(0,2.6fr) minmax(0,1fr)}
.v2.layout-carousel.media-start>.section-inner>:is(.section-copy,.v2-tail){grid-column:2}
.v2.layout-carousel.media-start>.section-inner>.carousel{grid-column:1}

/* Overlay: full-bleed media behind the copy with a legibility scrim. The
   scrim is a gradient anchored to the copy block: clear above it, fading in
   over --scrim-fade, and --scrim black from the top of the copy down to the
   section edge. At the default .62, white text (and text at 90% white)
   reaches 4.5:1 even over a pure white photo; soft (.46) guarantees 3:1 for
   large text only, strong (.74) is for busy photos. */
.v2.layout-overlay{--scrim:.62;--scrim-fade:clamp(96px,14vw,200px);--muted:rgb(255 255 255/.9);isolation:isolate;overflow:clip;min-height:min(88svh,880px);display:flex;align-items:flex-end;color:#fff;background:var(--contrast);padding-top:clamp(120px,16vw,220px)}
.v2.layout-overlay.scrim-soft{--scrim:.46}
.v2.layout-overlay.scrim-strong{--scrim:.74}
.v2.layout-overlay>.section-inner{width:100%;position:static}
.v2.layout-overlay>.section-inner>.v2-media{position:absolute;inset:0;z-index:-2;aspect-ratio:auto;border-radius:0;background:var(--contrast)}
.v2.layout-overlay>.section-inner>.v2-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgb(0 0 0/.2),rgb(0 0 0/0) 40%)}
.v2.layout-overlay .section-copy{position:relative;max-width:min(860px,100%)}
.v2.layout-overlay .section-copy::before{content:"";position:absolute;z-index:-1;inset:calc(-1 * var(--scrim-fade)) -100vmax -100vmax;background:linear-gradient(to top,rgb(0 0 0/var(--scrim)) calc(100% - var(--scrim-fade)),rgb(0 0 0/0));pointer-events:none}
.v2.layout-overlay .eyebrow{color:#fff}
.v2.layout-overlay .body-copy,.v2.layout-overlay .v2-note{color:rgb(255 255 255/.9)}
.v2.layout-overlay :is(h1,h2,.body-copy){text-shadow:0 1px 2px rgb(0 0 0/.3),0 2px 24px rgb(0 0 0/.35)}
.v2.layout-overlay .button-secondary{color:#fff;box-shadow:inset 0 0 0 1.5px rgb(255 255 255/.55)}
.v2.layout-overlay :focus-visible{outline-color:#fff}

@container section (max-width:860px){
  .v2.layout-carousel:is(.media-start,.media-end)>.section-inner{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
  .v2.layout-carousel:is(.media-start,.media-end)>.section-inner>*{grid-column:1!important;grid-row:auto!important}
  .v2.layout-carousel:is(.media-start,.media-end)>.section-inner>.section-copy{margin-bottom:clamp(24px,4vw,40px)}
  .v2:is(.layout-split,.layout-asymmetric,.layout-sticky,.layout-spotlight)>.section-inner,.v2.media-start:is(.layout-split,.layout-asymmetric,.layout-spotlight)>.section-inner{grid-template-columns:minmax(0,1fr)}
  .v2-sticky{position:static}
  .v2.media-end.layout-sticky>.section-inner>.v2-sticky{order:0}
  .v2-grid{--cols:2}.cols-2 .v2-grid{--cols:2}.cols-3 .v2-grid,.cols-4 .v2-grid{--cols:2}
  .layout-bento .v2-grid{--cols:2;grid-auto-rows:minmax(200px,auto)}
  .layout-bento .v2-grid>:nth-child(6n+1){grid-column:1/-1}
  .layout-bento .v2-grid>:nth-child(6n+4):last-child,.layout-bento .v2-grid>:nth-child(6n+2):last-child{grid-column:span 1;grid-row:auto}
}
@container section (max-width:540px){
  .v2-grid,.cols-2 .v2-grid,.cols-3 .v2-grid,.cols-4 .v2-grid{--cols:1}
  .layout-bento .v2-grid{--cols:1;grid-auto-rows:auto}
  .layout-bento .v2-grid>:nth-child(6n+1){grid-column:auto;grid-row:auto}
  .layout-bento .v2-grid>*{grid-row:auto!important}
  .layout-bento .v2-grid .v2-media{aspect-ratio:4/3;flex:none}
  .layout-bento .v2-grid .v2-media img{position:static}
  .layout-masonry .v2-grid{columns:2 140px}
  .carousel-track{grid-auto-columns:86%}
}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .v2 :is(.v2-card,.v2-tile,.v2-step,.v2-moment,.v2-person,.v2-stat,.v2-dish){animation:reveal both var(--ease);animation-timeline:view();animation-range:entry 0% entry 35%}
  }
}
/* Touch: text links get a 44 px tall hit area on coarse pointers; the
   padding is cancelled by the margins, so nothing moves. */
@media (pointer:coarse){.text-link{padding-block:10px;margin-block:8px -10px}}
/* Print: dark or tinted themes print as dark text on white paper; page chrome
   and calls to action are left out, so a menu or price list prints cleanly. */
@media print{
  :root{--site-bg:#fff;--site-text:#111;--site-surface:#fff;--site-on-surface:#111;--site-contrast:#fff;--site-on-contrast:#111;--site-secondary:#555;color-scheme:light}
  *,*::before,*::after{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}
  :is(.tone-surface,.tone-contrast,.tone-accent){--bg:#fff;--fg:#111;--accent:#111}
  .site-header,.skip-link,.section-footer,.section-cta,.v2-actions,.section-hero .v2-media{display:none!important}
  .section{padding-top:14pt!important;padding-bottom:14pt!important;background:#fff!important;color:#111!important}
  .layout-overlay>.section-inner>.v2-media,.layout-overlay::before,.layout-overlay::after,.layout-overlay .section-copy::before{display:none!important}
  .layout-overlay :is(h1,h2,p,span,strong,li,a){color:#111!important}
  :is(.v2-dish,.v2-card,.faq-item,.v2-hours>div,tr){break-inside:avoid}
  :is(h1,h2,h3,.menu-group-title){break-after:avoid}
  .v2-menu{display:block!important;column-count:2;column-gap:28pt}
  .v2-menu-group{margin-bottom:14pt}
  .section.v2{break-inside:auto}
}

/* Contrast tokens computed for this palette (WCAG AA for small text). */:root{--muted-mix:70%;--ink-mix:80%;--display-mix:100%;--tag-mix:70%}.tone-surface{--muted-mix:70%;--ink-mix:80%;--display-mix:100%;--tag-mix:70%}.tone-contrast,.section-cta.v2.layout-band:not(.tone-surface,.tone-accent){--muted-mix:70%;--ink-mix:80%;--display-mix:100%;--tag-mix:45%}.tone-accent{--muted-mix:70%;--ink-mix:80%;--display-mix:100%;--tag-mix:44%}.quote.is-highlight{--muted:color-mix(in srgb,currentColor 70%,transparent)}:is(.v2-card,.item,.plan).is-highlight{--muted:color-mix(in srgb,currentColor 70%,transparent);--accent-ink:currentColor;--accent-display:currentColor;--tag-ink:currentColor}.site-colophon{color:color-mix(in srgb,var(--fg) 63%,transparent)}.header-v2{--nav-ink:color-mix(in srgb,var(--fg) 78%,transparent)}
.fit-9{--fit-letters:9}
/* v2 hero compositions: split, editorial, overlay, collage, minimal. */
.section-hero.v2 .v2-actions{margin-top:clamp(26px,3vw,36px)}
.section-hero.v2.layout-split .v2-media{aspect-ratio:4/4.4;box-shadow:var(--shadow)}
.section-hero.v2.layout-split .hero-art{min-height:clamp(320px,38vw,520px)}
.section-hero.v2 .hero-points{margin-top:clamp(28px,4vw,48px)}
.section-hero.v2:is(.layout-editorial,.layout-minimal)>.section-inner{grid-template-columns:minmax(0,1fr)}
.section-hero.v2.layout-editorial>.section-inner{display:grid;gap:clamp(28px,4vw,56px)}
.hero-ed-head h1{font-size:var(--site-step-5,clamp(3rem,1.8rem + 6vw,7rem));line-height:.96;letter-spacing:-.05em;margin:0;max-width:16ch}
.hero-ed-meta{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end;border-top:1px solid var(--line-strong);padding-top:clamp(20px,2.4vw,32px)}
.hero-ed-lede .body-copy{font-size:var(--step-1);max-width:38em}
.hero-ed-meta .hero-points{margin:0;border:0;padding:0;justify-content:flex-end}
.section-hero.v2.layout-editorial .v2-media{aspect-ratio:21/9;border-radius:var(--r-lg)}
.section-hero.v2.layout-editorial.media-start .v2-media{order:-1}
.section-hero.v2.layout-editorial.align-center .hero-ed-head{text-align:center}
.section-hero.v2.layout-editorial.align-center .hero-ed-head h1{margin-inline:auto}
.section-hero.v2.layout-overlay>.section-inner{display:block}
.section-hero.v2.layout-overlay h1{font-size:var(--site-step-5,clamp(3rem,1.8rem + 6vw,7rem));line-height:.98;max-width:18ch}
.section-hero.v2.layout-overlay .section-copy{animation:rise .9s var(--ease) both}
.section-hero.v2.layout-overlay .hero-points{border-color:rgb(255 255 255/.28)}
.section-hero.v2.layout-overlay .hero-points span{color:rgb(255 255 255/.9)}
.section-hero.v2.layout-overlay.align-center .section-copy{margin-inline:auto;text-align:center}
.section-hero.v2.layout-overlay.align-center h1{margin-inline:auto}
.section-hero.v2.layout-overlay.align-center .hero-points{justify-content:center}
.section-hero.v2.layout-collage>.section-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,6vw,96px);align-items:center}
.section-hero.v2.layout-collage.media-start>.section-inner>.hero-collage{order:-1}
.section-hero.v2.layout-collage>.section-inner>.hero-points{grid-column:1/-1;margin-top:0}
.hero-collage{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,clamp(44px,6vw,86px)));gap:clamp(10px,1.4vw,18px)}
.hero-collage>.v2-media{aspect-ratio:auto;box-shadow:var(--shadow)}
.hero-collage>:nth-child(1){grid-column:1/5;grid-row:1/6}
.hero-collage>:nth-child(2){grid-column:4/7;grid-row:4/7;z-index:1;outline:clamp(6px,.8vw,10px) solid var(--bg)}
.hero-collage>:nth-child(3){grid-column:5/7;grid-row:1/4}
.hero-collage>:only-child{grid-column:1/-1;grid-row:1/-1}
.hero-collage>.hero-art{min-height:0}
.section-hero.v2.layout-minimal>.section-inner{display:grid;gap:clamp(28px,4vw,52px)}
.section-hero.v2.layout-minimal .section-copy{max-width:none}
.section-hero.v2.layout-minimal h1{font-size:var(--site-step-5,clamp(3rem,1.8rem + 6vw,7rem));line-height:.95;letter-spacing:-.055em;max-width:13ch}
.section-hero.v2.layout-minimal.align-center h1{margin-inline:auto}
.section-hero.v2.layout-minimal .hero-points{margin:0;justify-content:space-between}
.section-hero.v2.layout-minimal.align-center .hero-points{justify-content:center}
.section-hero.v2.layout-minimal .v2-media{aspect-ratio:16/7}
.section-hero.v2:is(.layout-minimal,.layout-editorial){background:none}
.section-hero.v2:is(.tone-surface,.tone-contrast,.tone-accent){background:var(--bg)}
@container section (max-width:860px){
  .hero-ed-meta{grid-template-columns:minmax(0,1fr);align-items:start}
  .hero-ed-meta .hero-points{justify-content:flex-start}
  .section-hero.v2.layout-editorial .v2-media{aspect-ratio:4/3}
  .section-hero.v2.layout-collage>.section-inner{grid-template-columns:minmax(0,1fr)}
  .section-hero.v2.layout-collage.media-start>.section-inner>.hero-collage{order:0}
  .section-hero.v2.layout-split .v2-media{aspect-ratio:4/3.2}
  .section-hero.v2.layout-minimal .v2-media{aspect-ratio:4/3}
}
@container section (max-width:540px){
  .hero-collage{grid-template-rows:repeat(6,minmax(0,52px))}
  .section-hero.v2.layout-minimal .hero-points{justify-content:flex-start}
}

/* v2 text: stack, multi-column editorial, split, asymmetric, sticky. */
.section-text.v2>.section-inner>.v2-media{aspect-ratio:16/9;margin-top:clamp(28px,4vw,48px)}
.section-text.v2:is(.layout-split,.layout-asymmetric)>.section-inner>.v2-media{margin:0;aspect-ratio:4/3}
.section-text.v2.layout-asymmetric>.section-inner>.v2-media{aspect-ratio:5/4;margin-top:clamp(40px,8vw,120px)}
.section-text.v2.layout-asymmetric .section-copy{position:sticky;top:110px}
.section-text.v2.layout-columns .section-copy{max-width:none}
.section-text.v2.layout-columns .section-copy>h2{max-width:22ch}
.section-text.v2.layout-columns .section-copy>.body-copy{--cols:2;columns:var(--cols) 17em;column-gap:clamp(28px,4vw,64px);column-rule:1px solid var(--line);max-width:none;font-size:var(--step-0);line-height:1.8;color:inherit;margin-top:clamp(20px,3vw,36px)}
.section-text.v2.layout-columns.cols-3 .section-copy>.body-copy{--cols:3}
.section-text.v2.layout-columns .section-copy>.body-copy::first-letter{float:left;font-family:var(--font-display);font-size:3.7em;line-height:.82;font-weight:600;padding:.07em .12em 0 0;color:var(--accent-display)}
.section-text.v2.layout-columns .v2-tail{margin-top:clamp(24px,3vw,40px)}
.section-text.v2.layout-sticky .v2-sticky .v2-media{aspect-ratio:4/3}
@container section (max-width:860px){.section-text.v2.layout-asymmetric .section-copy{position:static}.section-text.v2.layout-asymmetric>.section-inner>.v2-media{margin-top:0}}
/* v2 text, article layout: one flowing long-form column (blog and magazine
   story bodies). Consecutive article sections read as one body: only the
   first keeps the section's top padding, headings carry the rhythm. */
.section-text.v2.layout-article{padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(8px,1.5vw,16px)}
.section-text.v2.layout-article+.section-text.v2.layout-article{padding-top:0}
.v2-article{max-width:40rem;margin-inline:auto}
.v2-article>h2{font-size:clamp(1.55rem,1.25rem + 1.2vw,2.15rem);line-height:1.2;letter-spacing:-.02em;margin:clamp(20px,3vw,36px) 0 .7em;text-wrap:balance}
.v2-article>.eyebrow{margin-bottom:12px}
.v2-article>p{margin:0 0 1.15em;font-size:clamp(1.125rem,1.06rem + .3vw,1.25rem);line-height:1.66;color:inherit;max-width:none;white-space:pre-line;hanging-punctuation:first}
.v2-article>p:last-child{margin-bottom:0}
.section-hero+.section-text.v2.layout-article .v2-article>p:first-of-type::first-letter{float:left;font-family:var(--font-display);font-size:3.4em;line-height:.86;font-weight:500;padding:.06em .1em 0 0;color:var(--accent-display)}
.v2-article>.v2-actions,.v2-article>.v2-note{margin-top:28px}
.v2-figure{width:100%;max-width:52rem;margin:clamp(12px,2vw,24px) auto}
.v2-figure>.v2-media{aspect-ratio:3/2}
.v2-figure figcaption{max-width:40rem;margin:12px auto 0;font-size:var(--step--1);line-height:1.5;color:var(--muted)}
.v2-article+.v2-figure{margin-top:clamp(28px,4vw,48px)}
.section-text.v2.layout-article+.section-quote.v2.layout-pull{padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(20px,3vw,32px)}
.section-text.v2.layout-article+.section-quote.v2.layout-pull .v2-pull{max-width:46rem;margin-inline:auto}
.section-text.v2.layout-article>.section-inner{display:block}

/* v2 features: card grid, bento, media list (alternating rows), sticky. */
.section-features.v2 .v2-card>.v2-media{aspect-ratio:16/10}
.section-features.v2>.section-inner>.v2-media{aspect-ratio:21/9;margin-bottom:clamp(28px,4vw,48px)}
.section-features.v2.layout-bento .v2-card{min-height:100%}
.section-features.v2.layout-bento .v2-grid>:nth-child(6n+1) :is(h3,.v2-item-heading){font-size:var(--step-2)}
.section-features.v2.layout-bento .v2-grid>:nth-child(6n+1):not(:has(.v2-media)){background:var(--accent-soft);border-color:transparent}
.section-features.v2.layout-list .v2-grid{--cols:1;gap:clamp(40px,7vw,104px)}
.section-features.v2.layout-list .v2-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,80px);background:none;border:0;overflow:visible}
.section-features.v2.layout-list .v2-card>.v2-media{border-radius:var(--r-lg);aspect-ratio:5/4;box-shadow:var(--shadow)}
.section-features.v2.layout-list .v2-card-body{padding:0}
.section-features.v2.layout-list .v2-card :is(h3,.v2-item-heading){font-size:var(--step-2);letter-spacing:-.028em}
.section-features.v2.layout-list .v2-card .body-copy{font-size:var(--step-1);line-height:1.6}
.section-features.v2.layout-list .v2-grid>:nth-child(even)>.v2-media{order:2}
.section-features.v2.layout-list.media-end .v2-grid>:nth-child(odd)>.v2-media{order:2}
.section-features.v2.layout-list.media-end .v2-grid>:nth-child(even)>.v2-media{order:0}
.section-features.v2.layout-list .v2-card:not(:has(.v2-media)){grid-template-columns:1fr}
.section-features.v2.layout-sticky .v2-steps .v2-card{flex-direction:row;align-items:stretch}
.section-features.v2.layout-sticky .v2-steps .v2-card>.v2-media{width:38%;flex:none;aspect-ratio:auto}
.section-features.v2.layout-sticky .v2-sticky>.v2-media{aspect-ratio:4/3}
@container section (max-width:700px){
  .section-features.v2.layout-list .v2-card{grid-template-columns:minmax(0,1fr)}
  .section-features.v2.layout-list .v2-grid>*>.v2-media{order:0!important}
  .section-features.v2.layout-sticky .v2-steps .v2-card{flex-direction:column}
  .section-features.v2.layout-sticky .v2-steps .v2-card>.v2-media{width:auto;aspect-ratio:16/10}
}

/* v2 call to action: panel, full-width band, split with media. */
.section-cta.v2 .v2-actions{margin-top:28px}
.section-cta.v2>.section-inner>.v2-media{aspect-ratio:4/3}
.section-cta.v2.layout-panel>.section-inner>.v2-media{margin-top:clamp(28px,4vw,48px);aspect-ratio:21/9}
.section-cta.v2.layout-band{margin:0;border-radius:0;padding-inline:var(--gutter);background:var(--contrast);color:var(--on-contrast)}
.section-cta.v2.layout-band .eyebrow{color:inherit}
.section-cta.v2.layout-band .section-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(28px,5vw,80px);max-width:none;align-items:center}
.section-cta.v2.layout-band .section-copy>*{grid-column:1}
.section-cta.v2.layout-band .section-copy>.v2-actions{grid-column:2;grid-row:1/span 3;margin:0;justify-content:flex-end}
.section-cta.v2.layout-band h2{font-size:clamp(1.9rem,1.4rem + 2.2vw,3.4rem);max-width:20ch}
.section-cta.v2.layout-band.has-image>.section-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.section-cta.v2.layout-band.has-image .section-copy{display:block}
.section-cta.v2.layout-band.has-image .v2-actions{margin-top:28px;justify-content:flex-start}
.section-cta.v2.layout-band .button-secondary{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,currentColor 45%,transparent)}
.section-cta.v2.layout-split{background:var(--accent-soft)}
.section-cta.v2.layout-split>.section-inner{row-gap:20px}
.section-cta.v2.layout-split>.section-inner>.v2-checks{grid-column:1;margin:0;align-self:start}
.section-cta.v2:is(.tone-surface,.tone-contrast,.tone-accent){background:var(--bg);color:var(--fg)}
@container section (max-width:760px){
  .section-cta.v2.layout-band .section-copy{grid-template-columns:minmax(0,1fr)}
  .section-cta.v2.layout-band .section-copy>.v2-actions{grid-column:1;grid-row:auto;margin-top:24px;justify-content:flex-start}
  .section-cta.v2.layout-band.has-image>.section-inner{grid-template-columns:minmax(0,1fr)}
}

.section-footer.v2:is(.tone-surface,.tone-contrast,.tone-accent){margin-top:0;border-top:0}
/* v2 footer: brand column, grouped link columns, legal line. */
/* A toned footer is its own band: no gap or rule above it. */
.section-footer.v2:is(.tone-surface,.tone-contrast,.tone-accent){margin-top:0;border-top:0}
.section-footer.v2>.section-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);gap:clamp(32px,5vw,80px);align-items:start}
.section-footer.v2:not(:has(.v2-footer-nav))>.section-inner{grid-template-columns:minmax(0,1fr)}
.v2-footer-brand .body-copy{font-size:.95rem;max-width:38ch}
.v2-footer-brand .v2-actions{margin-top:24px}
.v2-footer-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:28px 32px}
.v2-footer-heading{margin:0 0 14px;font-family:var(--font);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.v2-footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.v2-footer-col li{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}
.v2-footer-col a,.v2-footer-col strong{font-size:.95rem;font-weight:550;text-decoration:none}
.v2-footer-col a:hover{color:var(--accent-ink);text-decoration:underline}
.v2-footer-col span{font-size:var(--step--1);color:var(--muted);white-space:pre-line}
.v2-footer-legal{grid-column:1/-1;margin:0;padding-top:20px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted);white-space:pre-line}
@container section (max-width:760px){.section-footer.v2>.section-inner{grid-template-columns:minmax(0,1fr)}}
/* Touch: every footer link is a 44 px row on coarse pointers. */
@media (pointer:coarse){.v2-footer-col ul{gap:0}.v2-footer-col a{display:flex;align-items:center;min-height:44px}}

/* v2 quote: large pull quote, or spotlight beside an image. */
.v2-pull{margin:0;max-width:1000px}
.section-quote.v2.align-center .v2-pull{margin-inline:auto;text-align:center}
.v2-pull blockquote{margin:0}
.v2-pull blockquote p{margin:0;font-family:var(--font-display);font-size:clamp(1.7rem,1.15rem + 2.5vw,3.5rem);font-weight:500;line-height:1.14;letter-spacing:-.028em;white-space:pre-line;text-wrap:balance}
.v2-pull blockquote p::before{content:"“";display:block;height:.45em;margin-bottom:.12em;font-size:2.2em;line-height:.9;color:var(--accent)}
.v2-pull figcaption{display:flex;align-items:center;gap:14px;margin-top:clamp(24px,3vw,40px)}
.section-quote.v2.align-center .v2-pull figcaption{justify-content:center;text-align:left}
.v2-pull .quote-author strong{font-size:1.02rem}
.section-quote.v2.layout-spotlight>.section-inner{--a:1fr;--b:1.25fr}
.section-quote.v2.layout-spotlight>.section-inner>.v2-media{aspect-ratio:4/5}
.section-quote.v2.layout-spotlight .v2-pull blockquote p{font-size:clamp(1.5rem,1.1rem + 1.8vw,2.7rem)}
.section-quote.v2.layout-spotlight.media-end>.section-inner>.v2-media{order:2}

/* v2 header: configurable menu with mega-menu groups (details/summary), a
   call to action, sticky/static/overlay positions and a CSS-only drawer. */
.header-v2 .header-inner{gap:clamp(12px,2vw,28px)}
.nav-v2{margin-left:auto}
.nav-v2>ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.nav-v2 a,.nav-group>summary{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font-size:.92rem;font-weight:500;text-decoration:none;color:var(--nav-ink,color-mix(in srgb,var(--fg) 78%,transparent));cursor:pointer;list-style:none;white-space:nowrap;transition:background .2s,color .2s}
.nav-v2 a:hover,.nav-group>summary:hover,.nav-group[open]>summary{background:color-mix(in srgb,var(--fg) 7%,transparent);color:var(--fg)}
.nav-v2 a[aria-current=page]{color:var(--fg);font-weight:650}
.header-v2 summary::-webkit-details-marker{display:none}
.nav-chevron{width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
details[open]>summary .nav-chevron{transform:translateY(1px) rotate(-135deg)}
.nav-mega{position:absolute;left:0;right:0;top:100%;padding:clamp(18px,2.4vw,28px) var(--gutter);background:var(--bg);border-bottom:1px solid var(--line);box-shadow:var(--shadow);animation:menu-in .2s var(--ease)}
.nav-mega ul{list-style:none;margin:0 auto;padding:0;max-width:var(--container);display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}
.nav-mega a{display:grid;gap:3px;padding:14px 16px;border-radius:var(--r);white-space:normal;color:var(--fg)}
.nav-mega a span{font-size:.84rem;font-weight:400;line-height:1.45;color:var(--muted)}
.header-cta{margin:0;padding:10px 18px;font-size:.9rem;flex:none}
.nav-drawer{display:none}
.nav-drawer:not([open])>.drawer-panel{display:none}
.header-v2.is-static{position:relative}
body:has(>main>.layout-overlay:first-child) .header-v2.is-overlay:not(:has(.nav-drawer[open])){position:absolute;inset:0 0 auto;background:transparent;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;color:#fff}
body:has(>main>.layout-overlay:first-child) .header-v2.is-overlay:not(:has(.nav-drawer[open])) :is(.nav-v2>ul>li>a,.nav-group>summary,.nav-drawer>summary){color:rgb(255 255 255/.92);border-color:rgb(255 255 255/.4);background:transparent}
body:has(>main>.layout-overlay:first-child) .header-v2.is-overlay:not(:has(.nav-drawer[open])) :focus-visible:not(.nav-mega *){outline-color:#fff}
body:has(>main>.layout-overlay:first-child) .header-v2.is-overlay .nav-v2>ul>li>a:hover{background:rgb(255 255 255/.14)}
/* The transparent header gets its own scrim: dark enough behind the links
   for 4.5:1 over any photo, fading out below the bar. */
body:has(>main>.layout-overlay:first-child) .header-v2.is-overlay:not(:has(.nav-drawer[open]))::before{content:"";position:absolute;inset:0 0 -72px;z-index:-1;pointer-events:none;background:linear-gradient(rgb(0 0 0/.62) calc(100% - 72px),rgb(0 0 0/0))}
@media (max-width:960px){
  .nav-v2,.header-v2 .header-inner>.header-cta{display:none}
  .nav-drawer{display:block}
  .nav-drawer>summary{position:relative;z-index:2;list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;border:1px solid color-mix(in srgb,var(--fg) 16%,transparent);font-size:.9rem;font-weight:600;user-select:none;background:var(--bg)}
  .nav-drawer[open] .nav-icon i:first-child{transform:translateY(3.5px) rotate(45deg)}
  .nav-drawer[open] .nav-icon i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .header-v2:has(.nav-drawer[open]){-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}
  .nav-drawer[open]::before{content:"";position:fixed;inset:0;z-index:0;background:rgb(10 12 14/.38)}
  .drawer-panel{position:fixed;top:0;right:0;z-index:1;width:min(380px,88vw);height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:88px 22px 32px;display:grid;align-content:start;gap:20px;background:var(--bg);color:var(--fg);box-shadow:var(--shadow);animation:drawer-in .25s var(--ease)}
  .drawer-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
  .drawer-panel a,.drawer-panel summary{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-radius:var(--r-sm);font-size:1.05rem;font-weight:500;text-decoration:none;color:var(--fg);cursor:pointer;list-style:none}
  .drawer-panel a:hover,.drawer-panel summary:hover{background:color-mix(in srgb,var(--fg) 6%,transparent)}
  .drawer-panel a[aria-current=page]{font-weight:700}
  .drawer-panel details ul{padding-left:12px;border-left:1px solid var(--line);margin:2px 0 6px 14px}
  .drawer-panel details a{font-size:.98rem}
  .drawer-panel>.button,.drawer-panel>.button:hover{justify-content:space-between;margin:0;background:var(--accent);color:var(--on-accent)}
}
@keyframes drawer-in{from{transform:translateX(24px);opacity:0}}
.form-success{scroll-margin-top:clamp(96px,12vh,140px)}
/* Touch: a 44 px tall hit area for the brand on coarse pointers; the padding is cancelled by a margin, so the header keeps its height. */
@media (pointer:coarse){.header-v2 .brand{padding-block:12px;margin-block:-12px}}
/* Smallest phones: the menu toggle is an icon button (its "Menu" label stays for screen readers) and the cart pill tightens, so the brand is not cut off at 320 px. */
@media (max-width:420px){.header-v2 .header-inner{gap:10px}.nav-drawer>summary{width:44px;height:44px;padding:0;justify-content:center}.nav-drawer>summary .nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
/* v2 header brand options (site.header.brand): monogram, wordmark or logo.
   Appended only for documents that set a header brand. */
.brand-monogram{font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.04em;line-height:1}
.brand:hover .brand-monogram{transform:none}
.brand-logo{display:block;width:auto;height:auto;max-width:min(240px,46vw);max-height:36px;object-fit:contain}
.brand-logo.logo-small{max-height:28px}
.brand-logo.logo-large{max-height:48px}
.brand-wordmark .brand-name{font-size:clamp(1.3rem,1.12rem + .6vw,1.65rem);letter-spacing:-.01em;line-height:1}
/* Free compositions use the same renderer-owned CSS in the editor and live site. */
.section.fp-free {padding:0;position:relative;overflow:hidden;}
.fp-free-stage {position:relative;container-type:inline-size;isolation:isolate;box-sizing:border-box;width:100%;}
.fp-free-element {box-sizing:border-box;margin:0;min-width:0;max-width:none;border-style:solid;border-color:transparent;transform-origin:center;}
.fp-free-text {white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--site-font);}
.fp-free-text:is(h1,h2,h3) {font-family:var(--site-heading-font,var(--site-font));letter-spacing:inherit;}
.fp-free-button {display:flex;align-items:center;justify-content:center;gap:0;text-decoration:none;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--site-text);color:var(--site-bg);font-family:var(--site-font);padding:8px 16px;}
.fp-free-button:hover {filter:brightness(.92);}
.fp-free-button:focus-visible {outline:2px solid currentColor;outline-offset:4px;}
.fp-free-image {display:block;overflow:hidden;}
.fp-free-image img,.fp-free-image picture {display:block;width:100%;height:100%;margin:0;}
.fp-free-shape {background:var(--site-accent);}
@media (min-width:1024px){#home-s1>.fp-free-stage{aspect-ratio:1440/900;display:block;padding:0;}#home-s1 [data-free-id="el_home_0"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:1;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#241b18;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_1"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:2;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_1"] img{object-fit:cover;}#home-s1 [data-free-id="el_home_2"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:3;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(180deg,rgba(24,17,14,0.5) 0%,rgba(24,17,14,0) 30%,rgba(24,17,14,0.42) 100%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_3"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:4;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(102deg,rgba(24,17,14,0.84) 0%,rgba(24,17,14,0.58) 46%,rgba(24,17,14,0.22) 82%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_4"]{position:absolute;left:9.7222%;top:33.8889%;width:90.2778%;height:2.1111%;z-index:5;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_5"]{position:absolute;left:9.7222%;top:38.2222%;width:54.8611%;height:18.6667%;z-index:6;font-size:max(12px,5.6944cqw);font-weight:400;line-height:1.03;text-align:left;letter-spacing:0.01em;color:#fffdfb;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_6"]{position:absolute;left:9.7222%;top:59.3333%;width:36.1111%;height:7.1111%;z-index:7;font-size:max(12px,1.1806cqw);font-weight:400;line-height:1.85;text-align:left;letter-spacing:0em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_7"]{position:absolute;left:9.7222%;top:70.2222%;width:13.0556%;height:5.8889%;z-index:8;font-size:max(12px,0.8333cqw);font-weight:700;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-color:#fffdfb;border-width:1px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_8"]{position:absolute;left:45.6944%;top:89.4444%;width:8.6806%;height:8.5556%;z-index:9;font-size:max(10px,0.6944cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.26em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_9"]{position:absolute;left:77.9167%;top:96.2222%;width:20.4861%;height:2%;z-index:10;font-size:max(11px,0.7639cqw);font-weight:400;line-height:1.68;text-align:right;letter-spacing:0em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_10"]{position:absolute;left:0%;top:0%;width:100%;height:18.5556%;z-index:11;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(180deg,rgba(26,19,16,0.68) 0%,rgba(26,19,16,0.32) 58%,rgba(26,19,16,0) 100%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_11"]{position:absolute;left:9.7222%;top:1.8889%;width:37.9167%;height:2%;z-index:12;font-size:max(11px,0.7639cqw);font-weight:400;line-height:1.68;text-align:left;letter-spacing:0.12em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_12"]{position:absolute;left:86.1806%;top:1.4444%;width:6.1111%;height:3.1111%;z-index:13;font-size:max(11px,0.7639cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.16em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_13"]{position:absolute;left:9.7222%;top:13.6667%;width:20.8333%;height:0.1111%;z-index:14;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#fffdfb;border-width:0px;border-radius:0px;opacity:0.38;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_14"]{position:absolute;left:35.4167%;top:7.4444%;width:29.1667%;height:5%;z-index:15;font-size:max(12px,2.0139cqw);font-weight:400;line-height:1;text-align:center;letter-spacing:0.3em;justify-content:center;color:#fffdfb;font-family:Georgia, Cambria, serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_15"]{position:absolute;left:36.8056%;top:14%;width:9.5833%;height:3.8889%;z-index:16;font-size:max(12px,0.8333cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_16"]{position:absolute;left:44.0972%;top:14%;width:9.7917%;height:3.8889%;z-index:17;font-size:max(12px,0.8333cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_17"]{position:absolute;left:51.25%;top:14%;width:12.2222%;height:3.8889%;z-index:18;font-size:max(12px,0.8333cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}}@media (min-width:600px) and (width < 1024px){#home-s1>.fp-free-stage{aspect-ratio:1440/900;display:block;padding:0;}#home-s1 [data-free-id="el_home_0"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:1;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#241b18;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_1"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:2;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_1"] img{object-fit:cover;}#home-s1 [data-free-id="el_home_2"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:3;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(180deg,rgba(24,17,14,0.5) 0%,rgba(24,17,14,0) 30%,rgba(24,17,14,0.42) 100%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_3"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:4;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(102deg,rgba(24,17,14,0.84) 0%,rgba(24,17,14,0.58) 46%,rgba(24,17,14,0.22) 82%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_4"]{position:absolute;left:9.7222%;top:33.8889%;width:90.2778%;height:2.1111%;z-index:5;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_5"]{position:absolute;left:9.7222%;top:38.2222%;width:54.8611%;height:18.6667%;z-index:6;font-size:max(12px,5.6944cqw);font-weight:400;line-height:1.03;text-align:left;letter-spacing:0.01em;color:#fffdfb;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_6"]{position:absolute;left:9.7222%;top:59.3333%;width:36.1111%;height:7.1111%;z-index:7;font-size:max(12px,1.1806cqw);font-weight:400;line-height:1.85;text-align:left;letter-spacing:0em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_7"]{position:absolute;left:9.7222%;top:70.2222%;width:13.0556%;height:5.8889%;z-index:8;font-size:max(12px,0.8333cqw);font-weight:700;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-color:#fffdfb;border-width:1px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_8"]{position:absolute;left:45.6944%;top:89.4444%;width:8.6806%;height:8.5556%;z-index:9;font-size:max(10px,0.6944cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.26em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_9"]{position:absolute;left:77.9167%;top:96.2222%;width:20.4861%;height:2%;z-index:10;font-size:max(11px,0.7639cqw);font-weight:400;line-height:1.68;text-align:right;letter-spacing:0em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_10"]{position:absolute;left:0%;top:0%;width:100%;height:18.5556%;z-index:11;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(180deg,rgba(26,19,16,0.68) 0%,rgba(26,19,16,0.32) 58%,rgba(26,19,16,0) 100%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_11"]{position:absolute;left:9.7222%;top:1.8889%;width:37.9167%;height:2%;z-index:12;font-size:max(11px,0.7639cqw);font-weight:400;line-height:1.68;text-align:left;letter-spacing:0.12em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_12"]{position:absolute;left:86.1806%;top:1.4444%;width:6.1111%;height:3.1111%;z-index:13;font-size:max(11px,0.7639cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.16em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_13"]{position:absolute;left:9.7222%;top:13.6667%;width:20.8333%;height:0.1111%;z-index:14;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#fffdfb;border-width:0px;border-radius:0px;opacity:0.38;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_14"]{position:absolute;left:35.4167%;top:7.4444%;width:29.1667%;height:5%;z-index:15;font-size:max(12px,2.0139cqw);font-weight:400;line-height:1;text-align:center;letter-spacing:0.3em;justify-content:center;color:#fffdfb;font-family:Georgia, Cambria, serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_15"]{position:absolute;left:36.8056%;top:14%;width:9.5833%;height:3.8889%;z-index:16;font-size:max(12px,0.8333cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_16"]{position:absolute;left:44.0972%;top:14%;width:9.7917%;height:3.8889%;z-index:17;font-size:max(12px,0.8333cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_17"]{position:absolute;left:51.25%;top:14%;width:12.2222%;height:3.8889%;z-index:18;font-size:max(12px,0.8333cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}}@media (width < 600px){#home-s1>.fp-free-stage{aspect-ratio:390/844;display:block;padding:0;}#home-s1 [data-free-id="el_home_0"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:1;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#241b18;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_1"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:2;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_1"] img{object-fit:cover;}#home-s1 [data-free-id="el_home_2"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:3;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(180deg,rgba(24,17,14,0.5) 0%,rgba(24,17,14,0) 30%,rgba(24,17,14,0.42) 100%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_3"]{position:absolute;left:0%;top:0%;width:100%;height:100%;z-index:4;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(102deg,rgba(24,17,14,0.84) 0%,rgba(24,17,14,0.58) 46%,rgba(24,17,14,0.22) 82%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_4"]{position:absolute;left:4.6154%;top:38.6256%;width:95.3846%;height:2.2512%;z-index:5;font-size:max(11px,2.8205cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_5"]{position:absolute;left:4.6154%;top:43.128%;width:94.359%;height:10.545%;z-index:6;font-size:max(12px,11.0256cqw);font-weight:400;line-height:1.03;text-align:left;letter-spacing:0.01em;color:#fffdfb;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_6"]{position:absolute;left:4.6154%;top:56.2796%;width:94.359%;height:10.545%;z-index:7;font-size:max(12px,4.1026cqw);font-weight:400;line-height:1.85;text-align:left;letter-spacing:0em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_7"]{position:absolute;left:4.6154%;top:70.8531%;width:48.2051%;height:6.2796%;z-index:8;font-size:max(12px,3.0769cqw);font-weight:700;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-color:#fffdfb;border-width:1px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_8"]{position:absolute;left:0%;top:0%;width:0.2564%;height:0.1185%;z-index:9;font-size:max(10px,2.5641cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.26em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);display:none;}#home-s1 [data-free-id="el_home_9"]{position:absolute;left:0%;top:96.4455%;width:75.641%;height:2.1327%;z-index:10;font-size:max(11px,2.8205cqw);font-weight:400;line-height:1.68;text-align:right;letter-spacing:0em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_10"]{position:absolute;left:0%;top:0%;width:100%;height:23.8152%;z-index:11;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:transparent;background-image:linear-gradient(180deg,rgba(26,19,16,0.68) 0%,rgba(26,19,16,0.32) 58%,rgba(26,19,16,0) 100%);border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_11"]{position:absolute;left:4.6154%;top:1.3033%;width:83.5897%;height:3.673%;z-index:12;font-size:max(10px,2.5641cqw);font-weight:400;line-height:1.68;text-align:left;letter-spacing:0.08em;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_12"]{position:absolute;left:80.2564%;top:1.5403%;width:19.7436%;height:3.3175%;z-index:13;font-size:max(11px,2.8205cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.16em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_13"]{position:absolute;left:11.5385%;top:14.8104%;width:76.9231%;height:0.1185%;z-index:14;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#fffdfb;border-width:0px;border-radius:0px;opacity:0.38;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_14"]{position:absolute;left:12.3077%;top:15.6398%;width:75.641%;height:4.5024%;z-index:15;font-size:max(12px,5.641cqw);font-weight:400;line-height:1;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Georgia, Cambria, serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_15"]{position:absolute;left:4.8718%;top:19.1943%;width:35.3846%;height:4.1469%;z-index:16;font-size:max(12px,3.0769cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_16"]{position:absolute;left:28.2051%;top:19.1943%;width:36.1538%;height:4.1469%;z-index:17;font-size:max(12px,3.0769cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s1 [data-free-id="el_home_17"]{position:absolute;left:51.0256%;top:19.1943%;width:45.1282%;height:4.1469%;z-index:18;font-size:max(12px,3.0769cqw);font-weight:400;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#fffdfb;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}}
#home-s1{background:#241b18;}/* Free compositions use the same renderer-owned CSS in the editor and live site. */
.section.fp-free {padding:0;position:relative;overflow:hidden;}
.fp-free-stage {position:relative;container-type:inline-size;isolation:isolate;box-sizing:border-box;width:100%;}
.fp-free-element {box-sizing:border-box;margin:0;min-width:0;max-width:none;border-style:solid;border-color:transparent;transform-origin:center;}
.fp-free-text {white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--site-font);}
.fp-free-text:is(h1,h2,h3) {font-family:var(--site-heading-font,var(--site-font));letter-spacing:inherit;}
.fp-free-button {display:flex;align-items:center;justify-content:center;gap:0;text-decoration:none;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--site-text);color:var(--site-bg);font-family:var(--site-font);padding:8px 16px;}
.fp-free-button:hover {filter:brightness(.92);}
.fp-free-button:focus-visible {outline:2px solid currentColor;outline-offset:4px;}
.fp-free-image {display:block;overflow:hidden;}
.fp-free-image img,.fp-free-image picture {display:block;width:100%;height:100%;margin:0;}
.fp-free-shape {background:var(--site-accent);}
@media (min-width:1024px){#home-s2>.fp-free-stage{aspect-ratio:1440/565;display:block;padding:0;}#home-s2 [data-free-id="el_home_100"]{position:absolute;left:9.7222%;top:17.6991%;width:54.5139%;height:3.3628%;z-index:1;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_101"]{position:absolute;left:9.7222%;top:24.6018%;width:54.5139%;height:9.7345%;z-index:2;font-size:max(12px,3.5417cqw);font-weight:400;line-height:1.08;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_102"]{position:absolute;left:55.9722%;top:19.115%;width:31.8056%;height:15.2212%;z-index:3;font-size:max(12px,1.1111cqw);font-weight:400;line-height:1.8;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_103"]{position:absolute;left:9.7222%;top:42.1239%;width:80.5556%;height:0.177%;z-index:4;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_104"]{position:absolute;left:9.7222%;top:82.1239%;width:80.5556%;height:0.177%;z-index:5;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_105"]{position:absolute;left:36.5278%;top:42.3009%;width:0.0694%;height:39.823%;z-index:6;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_106"]{position:absolute;left:11.6667%;top:49.0265%;width:6.25%;height:2.1239%;z-index:7;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_107"]{position:absolute;left:11.6667%;top:59.823%;width:29.5139%;height:4.7788%;z-index:8;font-size:max(12px,1.5278cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_108"]{position:absolute;left:11.6667%;top:66.3717%;width:29.5139%;height:4.2478%;z-index:9;font-size:max(12px,0.9722cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_109"]{position:absolute;left:36.5972%;top:42.3009%;width:26.875%;height:39.823%;z-index:10;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#f7eae6;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_110"]{position:absolute;left:63.4028%;top:42.3009%;width:0.0694%;height:39.823%;z-index:11;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_111"]{position:absolute;left:38.5417%;top:49.0265%;width:9.0972%;height:2.1239%;z-index:12;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_112"]{position:absolute;left:38.5417%;top:59.823%;width:29.5139%;height:4.7788%;z-index:13;font-size:max(12px,1.5278cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_113"]{position:absolute;left:38.5417%;top:66.3717%;width:23.8194%;height:8.6726%;z-index:14;font-size:max(12px,0.9722cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_114"]{position:absolute;left:65.3472%;top:49.0265%;width:10.2778%;height:2.1239%;z-index:15;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_115"]{position:absolute;left:65.3472%;top:59.823%;width:29.5833%;height:4.7788%;z-index:16;font-size:max(12px,1.5278cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_116"]{position:absolute;left:65.3472%;top:66.3717%;width:23.8889%;height:8.6726%;z-index:17;font-size:max(12px,0.9722cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}}@media (min-width:600px) and (width < 1024px){#home-s2>.fp-free-stage{aspect-ratio:1440/565;display:block;padding:0;}#home-s2 [data-free-id="el_home_100"]{position:absolute;left:9.7222%;top:17.6991%;width:54.5139%;height:3.3628%;z-index:1;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_101"]{position:absolute;left:9.7222%;top:24.6018%;width:54.5139%;height:9.7345%;z-index:2;font-size:max(12px,3.5417cqw);font-weight:400;line-height:1.08;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_102"]{position:absolute;left:55.9722%;top:19.115%;width:31.8056%;height:15.2212%;z-index:3;font-size:max(12px,1.1111cqw);font-weight:400;line-height:1.8;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_103"]{position:absolute;left:9.7222%;top:42.1239%;width:80.5556%;height:0.177%;z-index:4;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_104"]{position:absolute;left:9.7222%;top:82.1239%;width:80.5556%;height:0.177%;z-index:5;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_105"]{position:absolute;left:36.5278%;top:42.3009%;width:0.0694%;height:39.823%;z-index:6;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_106"]{position:absolute;left:11.6667%;top:49.0265%;width:6.25%;height:2.1239%;z-index:7;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_107"]{position:absolute;left:11.6667%;top:59.823%;width:29.5139%;height:4.7788%;z-index:8;font-size:max(12px,1.5278cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_108"]{position:absolute;left:11.6667%;top:66.3717%;width:29.5139%;height:4.2478%;z-index:9;font-size:max(12px,0.9722cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_109"]{position:absolute;left:36.5972%;top:42.3009%;width:26.875%;height:39.823%;z-index:10;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#f7eae6;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_110"]{position:absolute;left:63.4028%;top:42.3009%;width:0.0694%;height:39.823%;z-index:11;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_111"]{position:absolute;left:38.5417%;top:49.0265%;width:9.0972%;height:2.1239%;z-index:12;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_112"]{position:absolute;left:38.5417%;top:59.823%;width:29.5139%;height:4.7788%;z-index:13;font-size:max(12px,1.5278cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_113"]{position:absolute;left:38.5417%;top:66.3717%;width:23.8194%;height:8.6726%;z-index:14;font-size:max(12px,0.9722cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_114"]{position:absolute;left:65.3472%;top:49.0265%;width:10.2778%;height:2.1239%;z-index:15;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_115"]{position:absolute;left:65.3472%;top:59.823%;width:29.5833%;height:4.7788%;z-index:16;font-size:max(12px,1.5278cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_116"]{position:absolute;left:65.3472%;top:66.3717%;width:23.8889%;height:8.6726%;z-index:17;font-size:max(12px,0.9722cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}}@media (width < 600px){#home-s2>.fp-free-stage{aspect-ratio:390/965;display:block;padding:0;}#home-s2 [data-free-id="el_home_100"]{position:absolute;left:4.6154%;top:6.0104%;width:95.3846%;height:1.9689%;z-index:1;font-size:max(11px,2.8205cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_101"]{position:absolute;left:4.6154%;top:10.0518%;width:95.3846%;height:3.6269%;z-index:2;font-size:max(12px,8.2051cqw);font-weight:400;line-height:1.08;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_102"]{position:absolute;left:4.6154%;top:15.8549%;width:94.359%;height:8.9119%;z-index:3;font-size:max(12px,4.1026cqw);font-weight:400;line-height:1.8;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_103"]{position:absolute;left:4.6154%;top:29.4301%;width:90.7692%;height:0.1036%;z-index:4;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_104"]{position:absolute;left:4.6154%;top:93.9896%;width:90.7692%;height:0.1036%;z-index:5;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_105"]{position:absolute;left:95.1282%;top:29.5337%;width:0.2564%;height:19.7927%;z-index:6;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_106"]{position:absolute;left:11.7949%;top:33.4715%;width:23.0769%;height:1.2435%;z-index:7;font-size:max(11px,2.8205cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_107"]{position:absolute;left:11.7949%;top:39.7927%;width:88.2051%;height:2.7979%;z-index:8;font-size:max(12px,5.641cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_108"]{position:absolute;left:11.7949%;top:43.6269%;width:88.2051%;height:2.487%;z-index:9;font-size:max(12px,3.5897cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_109"]{position:absolute;left:4.6154%;top:49.3264%;width:90.7692%;height:22.3834%;z-index:10;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#f7eae6;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_110"]{position:absolute;left:95.1282%;top:49.3264%;width:0.2564%;height:22.3834%;z-index:11;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#ecdfd9;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_111"]{position:absolute;left:11.7949%;top:53.2642%;width:33.5897%;height:1.2435%;z-index:12;font-size:max(11px,2.8205cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_112"]{position:absolute;left:11.7949%;top:59.5855%;width:88.2051%;height:2.7979%;z-index:13;font-size:max(12px,5.641cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_113"]{position:absolute;left:11.7949%;top:63.4197%;width:79.4872%;height:5.0777%;z-index:14;font-size:max(12px,3.5897cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_114"]{position:absolute;left:11.7949%;top:75.6477%;width:37.9487%;height:1.2435%;z-index:15;font-size:max(11px,2.8205cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.2em;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_115"]{position:absolute;left:11.7949%;top:81.9689%;width:88.2051%;height:2.7979%;z-index:16;font-size:max(12px,5.641cqw);font-weight:400;line-height:1.2;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s2 [data-free-id="el_home_116"]{position:absolute;left:11.7949%;top:85.6995%;width:79.4872%;height:5.0777%;z-index:17;font-size:max(12px,3.5897cqw);font-weight:400;line-height:1.7;text-align:left;letter-spacing:0em;color:#7e726c;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}}
#home-s2{background:#fffdfb;color:#332b28;}/* Free compositions use the same renderer-owned CSS in the editor and live site. */
.section.fp-free {padding:0;position:relative;overflow:hidden;}
.fp-free-stage {position:relative;container-type:inline-size;isolation:isolate;box-sizing:border-box;width:100%;}
.fp-free-element {box-sizing:border-box;margin:0;min-width:0;max-width:none;border-style:solid;border-color:transparent;transform-origin:center;}
.fp-free-text {white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--site-font);}
.fp-free-text:is(h1,h2,h3) {font-family:var(--site-heading-font,var(--site-font));letter-spacing:inherit;}
.fp-free-button {display:flex;align-items:center;justify-content:center;gap:0;text-decoration:none;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--site-text);color:var(--site-bg);font-family:var(--site-font);padding:8px 16px;}
.fp-free-button:hover {filter:brightness(.92);}
.fp-free-button:focus-visible {outline:2px solid currentColor;outline-offset:4px;}
.fp-free-image {display:block;overflow:hidden;}
.fp-free-image img,.fp-free-image picture {display:block;width:100%;height:100%;margin:0;}
.fp-free-shape {background:var(--site-accent);}
@media (min-width:1024px){#home-s3>.fp-free-stage{aspect-ratio:1440/351;display:block;padding:0;}#home-s3 [data-free-id="el_home_200"]{position:absolute;left:9.7222%;top:0%;width:80.5556%;height:73.7892%;z-index:1;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#f1ded8;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_201"]{position:absolute;left:13.75%;top:16.5242%;width:61.5972%;height:5.4131%;z-index:2;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_202"]{position:absolute;left:13.75%;top:25.9259%;width:50.5556%;height:31.6239%;z-index:3;font-size:max(12px,3.5417cqw);font-weight:400;line-height:1.08;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_203"]{position:absolute;left:67.7083%;top:29.3447%;width:18.5417%;height:15.0997%;z-index:4;font-size:max(12px,0.8333cqw);font-weight:700;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-color:#b1705b;border-width:1px;border-radius:0px;opacity:1;transform:rotate(0deg);}}@media (min-width:600px) and (width < 1024px){#home-s3>.fp-free-stage{aspect-ratio:1440/351;display:block;padding:0;}#home-s3 [data-free-id="el_home_200"]{position:absolute;left:9.7222%;top:0%;width:80.5556%;height:73.7892%;z-index:1;font-size:max(12px,1.6667cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#f1ded8;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_201"]{position:absolute;left:13.75%;top:16.5242%;width:61.5972%;height:5.4131%;z-index:2;font-size:max(11px,0.7639cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_202"]{position:absolute;left:13.75%;top:25.9259%;width:50.5556%;height:31.6239%;z-index:3;font-size:max(12px,3.5417cqw);font-weight:400;line-height:1.08;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_203"]{position:absolute;left:67.7083%;top:29.3447%;width:18.5417%;height:15.0997%;z-index:4;font-size:max(12px,0.8333cqw);font-weight:700;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-color:#b1705b;border-width:1px;border-radius:0px;opacity:1;transform:rotate(0deg);}}@media (width < 600px){#home-s3>.fp-free-stage{aspect-ratio:390/299;display:block;padding:0;}#home-s3 [data-free-id="el_home_200"]{position:absolute;left:4.6154%;top:0%;width:90.7692%;height:81.2709%;z-index:1;font-size:max(12px,6.1538cqw);font-weight:400;line-height:1.3;text-align:left;letter-spacing:0em;background:#f1ded8;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_201"]{position:absolute;left:12.3077%;top:10.0334%;width:87.6923%;height:6.3545%;z-index:2;font-size:max(11px,2.8205cqw);font-weight:700;line-height:1.68;text-align:left;letter-spacing:0.26em;color:#eec3b2;font-family:Inter, ui-sans-serif, system-ui, sans-serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_202"]{position:absolute;left:12.3077%;top:21.0702%;width:78.4615%;height:23.0769%;z-index:3;font-size:max(12px,8.2051cqw);font-weight:400;line-height:1.08;text-align:left;letter-spacing:0em;color:#332b28;font-family:Georgia, Cambria, serif;border-width:0px;border-radius:0px;opacity:1;transform:rotate(0deg);}#home-s3 [data-free-id="el_home_203"]{position:absolute;left:12.3077%;top:53.5117%;width:68.4615%;height:17.7258%;z-index:4;font-size:max(12px,3.0769cqw);font-weight:700;line-height:1.68;text-align:center;letter-spacing:0.2em;justify-content:center;color:#b1705b;font-family:Inter, ui-sans-serif, system-ui, sans-serif;background:transparent;border-color:#b1705b;border-width:1px;border-radius:0px;opacity:1;transform:rotate(0deg);}}
#home-s3{background:#fffdfb;color:#332b28;}
#home-footer{background:#f5f5f5;color:#212121;}#p1-s1{--font:"Inter Variable", ui-sans-serif, system-ui, sans-serif;--site-font:"Inter Variable", ui-sans-serif, system-ui, sans-serif;font-family:var(--font);}
#p1-s1{background:#ffffff;color:#212121;}#p1-s2{--font:"Inter Variable", ui-sans-serif, system-ui, sans-serif;--site-font:"Inter Variable", ui-sans-serif, system-ui, sans-serif;font-family:var(--font);}
#p1-footer{background:#f5f5f5;color:#212121;}
#p2-footer{background:#f5f5f5;color:#212121;}
#cms-copy-24cb92ac29571f409fb9{background:#f5f5f5;color:#212121;}
#cms-copy-affcebd9776b47232da4{background:#f5f5f5;color:#212121;}
#cms-copy-13909d4f047953a30fe7{background:#f5f5f5;color:#212121;}