/* Grace Letters – Version 2 · Stylesheet */
@font-face{font-family:"Fraunces";src:url("../fonts/fraunces-latin-opsz-normal.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("../fonts/fraunces-latin-opsz-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Manrope";src:url("../fonts/manrope-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Manrope";src:url("../fonts/manrope-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Manrope";src:url("../fonts/manrope-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Birthstone";src:url("../fonts/birthstone-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}

:root{
  --bg:#F7F4EE;--paper:#FCFAF6;--ink:#1F2A22;--muted:#55594F;--line:#DDD5C8;--field:#B9AE9A;
  --wax:#9C3D2E;--wax-dark:#7F2F23;--sage:#6E7D5E;--sagel:#E3E6DA;--blush:#F0E2D9;--mist:#E2E6E6;
  --display:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--hand:"Birthstone",cursive;
  --pad:56px;--section:140px;--max:1440px;
}
@media (max-width:1100px){:root{--pad:32px;--section:104px}}
@media (max-width:720px){:root{--pad:20px;--section:72px}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}
img{display:block;max-width:100%}
a{color:var(--ink)}a:hover{color:var(--wax)}
button,input,textarea,select{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--wax);outline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--paper);padding:12px 18px}
.skip:focus{top:12px}

.wrap{width:100%;max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.section{padding-top:var(--section);padding-bottom:var(--section)}
.section--top0{padding-top:0}
.grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}

/* Typo */
.display{font-family:var(--display);font-weight:300;letter-spacing:-.02em;line-height:1;margin:0}
.display em,.it{font-style:italic}
.accent{color:var(--wax)}
.h1{font-size:clamp(46px,6.2vw,96px);line-height:.97}
.h1--xl{font-size:clamp(52px,7.2vw,104px);line-height:.95}
.h2{font-size:clamp(38px,5vw,72px)}
.h2--m{font-size:clamp(34px,4.2vw,60px);line-height:1.04}
.h2--s{font-size:clamp(32px,3.4vw,48px)}
.h3{font-size:clamp(28px,3vw,44px);line-height:1.05}
.eyebrow{display:inline-block;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.eyebrow--light{color:#B9B5A9}
.lead{font-size:18px;line-height:1.7;color:var(--muted);margin:0}
.muted{color:var(--muted)}
.hand{font-family:var(--hand);font-weight:400;line-height:1;color:var(--wax)}
.stack{display:flex;flex-direction:column}
.gap-8{gap:8px}.gap-12{gap:12px}.gap-18{gap:18px}.gap-24{gap:24px}.gap-28{gap:28px}.gap-40{gap:40px}.gap-56{gap:56px}
p{margin:0}

/* Buttons */
.btn,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 30px;border-radius:2px;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
.btn{background:var(--wax);color:var(--paper);border:1px solid var(--wax)}
.btn:hover{background:var(--wax-dark);border-color:var(--wax-dark);color:var(--paper)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.btn--light{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.btn--light:hover{background:#fff;color:var(--wax)}
.btn--block{width:100%}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.arrowlink{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor}
.arrowlink svg,.btn svg{flex-shrink:0}
.arrowlink--light{color:var(--paper)}.arrowlink--light:hover{color:#E7B4A6}

/* Header */
.topbar{background:var(--ink);color:#E9E4DA;font-size:12px;letter-spacing:.06em}
.topbar .wrap{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.topbar a{color:#E9E4DA;text-decoration:none}
.site-header{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line)}
.site-header .wrap{height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.nav{display:flex;gap:28px;align-items:center}
.nav--right{justify-content:flex-end}
.nav a{display:flex;align-items:center;height:44px;font-size:14px;font-weight:500;text-decoration:none;border-bottom:1px solid transparent}
.nav a[aria-current="page"]{border-bottom-color:var(--wax)}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.logo span{font-family:var(--display);font-weight:300;font-size:32px;line-height:1;letter-spacing:-.02em}
.logo .logo__i{font-style:italic}
.logo__mark{width:30px;height:30px;border:1px solid var(--ink);border-radius:50%;display:flex;align-items:center;justify-content:center}
.cartlink{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 16px;border:1px solid var(--ink);border-radius:2px;font-size:13px;font-weight:600;text-decoration:none}
.burger{display:none;width:44px;height:44px;border:0;background:transparent;align-items:center;justify-content:center;cursor:pointer}
.mobile-nav{display:none;border-top:1px solid var(--line);background:var(--bg)}
.mobile-nav a{display:flex;align-items:center;min-height:52px;padding:0 var(--pad);font-family:var(--display);font-weight:300;font-size:26px;text-decoration:none;border-bottom:1px solid var(--line)}
.mobile-nav.is-open{display:block}
@media (max-width:1100px){
  .site-header .wrap{grid-template-columns:auto 1fr auto;height:72px}
  .nav{display:none}
  .burger{display:inline-flex}
  .logo{justify-self:center}
  .logo span{font-size:26px}
  .cartlink .cartlink__label{display:none}
  .topbar .topbar__side{display:none}
  .topbar .wrap{justify-content:center;text-align:center}
}

/* Hero */
.hero{padding-top:56px;padding-bottom:88px}
.hero .grid12{align-items:center}
.hero__text{grid-column:span 5;padding-right:24px}
.hero__media{grid-column:6 / span 7;position:relative}
.hero__media img{width:100%;height:680px;object-fit:cover;border-radius:2px}
.note-card{position:absolute;left:-48px;bottom:-24px;width:300px;padding:28px 30px;background:var(--paper);box-shadow:0 24px 48px -28px rgba(31,42,34,.45)}
.note-card .hand{font-size:44px}
@media (max-width:1100px){
  .hero__text,.hero__media{grid-column:1 / -1;padding-right:0}
  .hero__media{order:-1;margin-bottom:40px}
  .hero__media img{height:520px}
  .note-card{left:16px;bottom:-24px}
}
@media (max-width:720px){.hero{padding-top:0}.hero .wrap{padding-left:0;padding-right:0}.hero__text{padding:0 var(--pad)}.hero__media img{height:420px;border-radius:0}.note-card{width:240px;padding:20px}.note-card .hand{font-size:34px}}

/* Band */
.band{background:var(--wax);color:var(--paper);overflow:hidden;white-space:nowrap}
.band__track{display:inline-flex;align-items:center;gap:36px;padding:26px 0;font-family:var(--display);font-style:italic;font-weight:300;font-size:30px;animation:marquee 40s linear infinite}
.band__track svg{flex-shrink:0}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:720px){.band__track{font-size:22px;padding:18px 0;gap:22px}}

/* Section head */
.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:64px}

/* Letter cards */
.cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.cards2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
@media (max-width:1100px){.cards3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.cards3,.cards2{grid-template-columns:1fr;gap:48px}}
.letter{display:flex;flex-direction:column;gap:20px;text-decoration:none;color:var(--ink);transition:opacity .25s,outline-color .25s;outline:1px solid transparent;outline-offset:16px}
.letter:hover{color:var(--ink)}
.letter__media{position:relative;overflow:hidden;aspect-ratio:4/5}
.letter__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.letter:hover .letter__media img{transform:scale(1.03)}
.chip{position:absolute;left:16px;top:16px;min-height:30px;padding:6px 12px;background:var(--paper);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.letter__title{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.letter__title .display{font-size:clamp(34px,3vw,44px)}
.letter__price{font-size:15px;font-weight:600;white-space:nowrap}
.letter__price small{font-size:15px;font-weight:400;color:var(--muted)}
.letter__more{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--wax)}
.letter.is-dim{opacity:.4}
.letter.is-hit{outline-color:var(--wax)}

/* Feature list */
.split{align-items:center}
.split__media{grid-column:span 6}
.split__media img{width:100%;height:780px;object-fit:cover;border-radius:2px}
.split__text{grid-column:8 / span 5}
@media (max-width:1100px){.split__media,.split__text{grid-column:1 / -1}.split__media img{height:520px}.split__text{margin-top:48px}}
@media (max-width:720px){.split__media img{height:380px}}
.numlist{display:flex;flex-direction:column}
.numlist__row{display:flex;gap:24px;align-items:baseline;padding:18px 0;border-top:1px solid var(--line)}
.numlist__n{font-family:var(--display);font-style:italic;font-weight:300;font-size:22px;color:var(--wax);width:36px;flex-shrink:0}
.numlist__t{font-family:var(--display);font-weight:300;font-size:28px;flex-grow:1}
.numlist__d{font-size:14px;color:var(--muted);text-align:right}
@media (max-width:720px){.numlist__row{flex-wrap:wrap;gap:4px 16px}.numlist__d{width:100%;padding-left:52px;text-align:left}}

/* Steps */
.steps{background:var(--sagel);padding:96px 80px}
.steps__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:56px}
.step{border-top:1px solid var(--ink);padding-top:24px;display:flex;flex-direction:column;gap:16px}
.step__n{font-family:var(--display);font-weight:300;font-size:110px;line-height:.85;color:var(--sage)}
.step h3{margin:0;font-family:var(--display);font-weight:300;font-size:32px;line-height:1.1}
@media (max-width:1100px){.steps{padding:64px 40px}.steps__grid{grid-template-columns:1fr;gap:32px}.step__n{font-size:72px}}
@media (max-width:720px){.steps{padding:48px 24px}}

/* Photo banner */
.banner{position:relative;min-height:680px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.banner__overlay{position:relative;z-index:1;width:100%;min-height:680px;background:rgba(20,24,20,.5);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;text-align:center;padding:80px var(--pad)}
.banner__quote{font-size:clamp(34px,4.5vw,64px);line-height:1.1;color:var(--paper);max-width:1080px}
@media (max-width:720px){.banner,.banner__overlay{min-height:480px}}

/* Duo */
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.duo__card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.duo__card img{width:100%;height:100%;min-height:560px;object-fit:cover}
.duo__text{padding:56px 48px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.duo__card--blush{background:var(--blush)}
.duo__card--ink{background:var(--ink);color:var(--paper)}
.duo__card--ink p{color:#D9D6CC}
@media (max-width:1100px){.duo{grid-template-columns:1fr}}
@media (max-width:720px){.duo__card{grid-template-columns:1fr}.duo__card img{min-height:280px;height:280px}.duo__card--ink img{order:-1}.duo__text{padding:36px 24px}}

/* Insta */
.insta{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:32px}
.insta img{width:100%;aspect-ratio:1/1;object-fit:cover}
@media (max-width:1100px){.insta{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Page hero */
.page-hero{padding-top:96px;padding-bottom:64px}
.page-hero .grid12{align-items:end;row-gap:28px}
.page-hero__title{grid-column:span 7}
.page-hero__aside{grid-column:9 / span 4}
@media (max-width:1100px){.page-hero__title,.page-hero__aside{grid-column:1 / -1}.page-hero{padding-top:64px}}

/* Filter / chips */
.picker{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:32px 36px;background:var(--paper);border:1px solid var(--line);margin-bottom:64px}
.picker__title{font-family:var(--display);font-weight:300;font-size:30px}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{min-height:46px;padding:0 20px;border-radius:2px;border:1px solid var(--field);background:transparent;font-size:14px;font-weight:500;cursor:pointer}
.pill[aria-pressed="true"],.pill.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pills--wax .pill[aria-pressed="true"]{background:var(--wax);border-color:var(--wax)}
@media (max-width:720px){.picker{padding:24px 20px}.pill{width:100%}}

/* Compare table */
.compare{overflow-x:auto;border-top:1px solid var(--ink)}
.compare table{width:100%;min-width:720px;border-collapse:collapse}
.compare th,.compare td{padding:20px 12px 20px 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400;font-size:16px;vertical-align:top}
.compare th[scope="row"]{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);width:22%}
.compare thead th{font-family:var(--display);font-weight:300;font-size:24px}

/* Gift banner */
.giftbanner{position:relative;min-height:420px;overflow:hidden}
.giftbanner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.giftbanner__card{position:relative;margin:56px;max-width:520px;padding:48px;background:var(--paper);display:flex;flex-direction:column;gap:18px}
@media (max-width:720px){.giftbanner__card{margin:120px 16px 16px;padding:28px}}

/* Product */
.crumbs{padding-top:24px;font-size:13px;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap}
.crumbs a{color:var(--muted)}
.product{padding-top:32px;padding-bottom:120px;row-gap:48px}
.product__gallery{grid-column:span 7;display:flex;flex-direction:column;gap:14px}
.product__main{aspect-ratio:4/5;max-height:760px;width:100%;overflow:hidden;background:var(--line)}
.product__main img{width:100%;height:100%;object-fit:cover}
.thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.thumb{padding:0;border:0;background:none;cursor:pointer;opacity:.7;outline:2px solid transparent;outline-offset:3px;aspect-ratio:1/1;overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover}
.thumb[aria-current="true"]{opacity:1;outline-color:var(--wax)}
.product__buy{grid-column:9 / span 4;display:flex;flex-direction:column;gap:24px;padding-top:8px;align-self:start;position:sticky;top:112px}
@media (max-width:1100px){.product__gallery,.product__buy{grid-column:1 / -1}.product__buy{position:static}}
.price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.price__value{font-family:var(--display);font-weight:300;font-size:40px}
.opts{display:flex;flex-direction:column;gap:8px}
.opt{min-height:64px;padding:12px 18px;border-radius:2px;border:1px solid #D9CEBB;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer}
.opt__name{display:block;font-size:15px;font-weight:600}
.opt__note{display:block;font-size:13px;opacity:.75}
.opt__price{font-family:var(--display);font-size:20px;font-weight:300;white-space:nowrap}
.opt[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.field{display:flex;flex-direction:column;gap:8px}
.field label{font-size:13px;font-weight:600}
.input,.textarea{width:100%;min-height:54px;padding:0 16px;border:1px solid var(--field);border-radius:2px;background:var(--paper);font-size:15px}
.textarea{padding:14px 16px;resize:vertical;min-height:110px}
.buyrow{display:flex;gap:12px}
.qty{display:flex;align-items:center;height:54px;border:1px solid var(--field);border-radius:2px;flex-shrink:0}
.qty button{width:48px;height:52px;border:0;background:transparent;font-size:20px;cursor:pointer}
.qty output,.qty span{width:28px;text-align:center}
.buyrow .btn{flex-grow:1}
.small{font-size:12px;line-height:1.6;color:var(--muted)}
.verse{border-left:2px solid var(--wax);padding:4px 0 4px 20px;display:flex;flex-direction:column;gap:8px}
.verse p{font-family:var(--display);font-style:italic;font-weight:300;font-size:22px;line-height:1.4}
.toast{display:none;padding:14px 16px;background:var(--sagel);font-size:14px}
.toast.is-on{display:block}
.toast a{font-weight:600}

.details{padding:64px 72px;row-gap:32px}
.details__tabs{grid-column:span 4;display:flex;flex-direction:column;gap:6px}
.details__panel{grid-column:6 / span 7;min-height:340px}
.tab{height:56px;padding:0;border:0;border-bottom:1px solid rgba(31,42,34,.18);background:transparent;text-align:left;font-family:var(--display);font-size:26px;font-weight:300;color:#6B6E64;cursor:pointer}
.tab[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink)}
.details__panel .stack p{font-size:17px;line-height:1.75}
.shiprow{display:flex;flex-direction:column;gap:6px;padding:18px 0;border-top:1px solid var(--line)}
@media (max-width:1100px){.details{padding:48px 32px}.details__tabs,.details__panel{grid-column:1 / -1}.details__tabs{flex-direction:row;overflow-x:auto;gap:24px}.tab{font-size:20px;white-space:nowrap}}
@media (max-width:720px){.details{padding:36px 20px;margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1)}}
.tint-faith{background:var(--sagel)}.tint-joy{background:var(--blush)}.tint-sym{background:var(--mist)}

/* Cart */
.steps-line{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding-bottom:36px}
.steps-line .is-on{color:var(--wax)}.steps-line span{color:var(--muted)}
.steps-line i{width:48px;height:1px;background:var(--line)}
.cart__main{grid-column:span 8}
.cart__aside{grid-column:10 / span 3;align-self:start;margin-top:150px;background:var(--paper);border:1px solid var(--line);padding:36px;display:flex;flex-direction:column;gap:18px;position:sticky;top:112px}
@media (max-width:1100px){.cart__main,.cart__aside{grid-column:1 / -1}.cart__aside{margin-top:48px;position:static}}
.cartrow{display:grid;grid-template-columns:140px 1fr auto auto;gap:28px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}
.cartrow img{width:140px;height:170px;object-fit:cover}
.cartrow__name{font-family:var(--display);font-weight:300;font-size:32px;line-height:1.1}
.cartrow__price{width:120px;text-align:right;font-family:var(--display);font-weight:300;font-size:28px}
.linkbtn{align-self:flex-start;min-height:44px;padding:0;border:0;background:none;font-size:13px;color:var(--muted);text-decoration:underline;cursor:pointer}
@media (max-width:720px){.cartrow{grid-template-columns:96px 1fr;gap:16px}.cartrow img{width:96px;height:120px}.cartrow__price{width:auto;text-align:left}.cartrow .qty,.cartrow__price{grid-column:2}}
.sumrow{display:flex;justify-content:space-between;align-items:baseline;font-size:15px}
.empty{padding:48px 0;display:flex;flex-direction:column;gap:18px;align-items:flex-start}

/* Mission */
.lines{background:var(--ink);color:var(--paper);padding:120px var(--pad);display:flex;flex-direction:column;gap:8px;overflow:hidden}
.lines p{font-family:var(--display);font-weight:300;font-size:clamp(48px,8.4vw,120px);line-height:1;letter-spacing:-.02em}
.lines p:nth-child(2){font-style:italic;color:#E7B4A6;padding-left:14%}
.lines p:nth-child(3){padding-left:28%}
@media (max-width:720px){.lines p:nth-child(2){padding-left:8%}.lines p:nth-child(3){padding-left:16%}}
.two-col-img{grid-column:span 5}.two-col-img img{width:100%;height:760px;object-fit:cover}
.two-col-text{grid-column:7 / span 6;padding-top:40px}
@media (max-width:1100px){.two-col-img,.two-col-text{grid-column:1 / -1}.two-col-img img{height:480px}}
.pillar img{width:100%;height:460px;object-fit:cover}
@media (max-width:720px){.pillar img{height:300px}}
.callout{padding:96px;background:var(--blush);display:flex;flex-direction:column;align-items:center;gap:32px;text-align:center}
@media (max-width:720px){.callout{padding:48px 24px}}

/* Team */
.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.portrait{aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;position:relative}
.portrait span{position:absolute;left:16px;bottom:16px;padding:6px 12px;background:var(--paper);font-size:12px;color:var(--muted)}
@media (max-width:1100px){.team{grid-template-columns:1fr;gap:72px}.team article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:32px;align-items:start}}
@media (max-width:720px){.team article{display:flex;flex-direction:column;gap:20px}}
.quote-wax{font-family:var(--display);font-style:italic;font-weight:300;font-size:24px;line-height:1.35;color:var(--wax)}
.contact-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--ink);color:var(--paper)}
.contact-cta>div{padding:80px;display:flex;flex-direction:column;justify-content:center;gap:24px}
.contact-cta img{width:100%;height:100%;min-height:440px;object-fit:cover}
@media (max-width:720px){.contact-cta{grid-template-columns:1fr}.contact-cta>div{padding:40px 24px}.contact-cta img{min-height:260px}}

/* Dark band */
.darkband{background:var(--ink);color:var(--paper);padding:120px 0}
.darkband .grid12{align-items:center;row-gap:32px}
.darkband__l{grid-column:span 4}.darkband__r{grid-column:6 / span 7}
.darkband__r p{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(24px,2.4vw,34px);line-height:1.4}
@media (max-width:1100px){.darkband__l,.darkband__r{grid-column:1 / -1}}
.partner{background:var(--blush);row-gap:0}
.partner__img{grid-column:span 6}.partner__img img{width:100%;height:520px;object-fit:cover}
.partner__text{grid-column:8 / span 4;padding:48px 0;display:flex;flex-direction:column;justify-content:center;gap:20px}
@media (max-width:1100px){.partner__img,.partner__text{grid-column:1 / -1}.partner__img img{height:360px}.partner__text{padding:40px 32px}}
.bigquote{font-size:clamp(44px,5.6vw,80px);line-height:1.05;max-width:1100px}
.center{text-align:center;align-items:center}

/* FAQ */
.faq__list{grid-column:span 8;border-top:1px solid var(--ink)}
.faq__aside{grid-column:10 / span 3;align-self:start}
@media (max-width:1100px){.faq__list,.faq__aside{grid-column:1 / -1}.faq__aside{margin-top:56px;max-width:480px}}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;min-height:84px;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;font-family:var(--display);font-weight:300;font-size:clamp(22px,2.2vw,28px);cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";flex-shrink:0;width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:18px}
.faq-item[open] summary::after{content:"−"}
.faq-item p{padding:0 72px 28px 0;font-size:17px;line-height:1.75;color:var(--muted)}
@media (max-width:720px){.faq-item p{padding-right:0}}
.faq-item[hidden]{display:none}
.faq__none{padding:32px 0;color:var(--muted);display:none}

/* Kontakt */
.contact__media{grid-column:span 5;position:relative}
.contact__media img{width:100%;height:880px;object-fit:cover}
.contact__card{position:absolute;left:32px;right:32px;bottom:32px;padding:28px;background:var(--paper);display:flex;flex-direction:column;gap:6px}
.contact__form{grid-column:7 / span 6;padding-top:24px}
@media (max-width:1100px){.contact__media,.contact__form{grid-column:1 / -1}.contact__media{order:2;margin-top:56px}.contact__media img{height:520px}}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:720px){.form-grid{grid-template-columns:1fr}}
.success{padding:36px;background:var(--sagel);display:none;flex-direction:column;gap:10px}
.success.is-on{display:flex}
.hp{position:absolute;left:-9999px}

/* Legal / credits */
.prose{max-width:760px}
.prose h2{font-family:var(--display);font-weight:300;font-size:32px;margin:48px 0 12px}
.prose p{margin:0 0 14px;color:var(--muted)}
.credits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 28px}
.credits img{width:100%;height:240px;object-fit:cover}
@media (max-width:1100px){.credits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.credits{grid-template-columns:1fr}}

/* Footer */
.site-footer{background:var(--ink);color:#D9D6CC;padding:96px 0 40px}
.site-footer a{color:#D9D6CC;text-decoration:none}.site-footer a:hover{color:#fff}
.footer__top{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;flex-wrap:wrap;border-bottom:1px solid #3A4639;padding-bottom:56px}
.footer__claim{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(52px,6.6vw,96px);line-height:.95;color:var(--paper)}
.newsletter{width:100%;max-width:380px;display:flex;flex-direction:column;gap:12px}
.newsletter label{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#B9B5A9}
.newsletter__row{display:flex;border-bottom:1px solid #8A8C80}
.newsletter input{flex-grow:1;min-height:52px;border:0;background:transparent;color:var(--paper);font-size:15px}
.newsletter input::placeholder{color:#9E9C92}
.newsletter button{width:52px;height:52px;border:0;background:transparent;color:var(--paper);cursor:pointer}
.newsletter__msg{font-size:13px;color:#B9B5A9;min-height:20px}
.footer__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px;padding:72px 0;font-size:15px}
.footer__cols div{display:flex;flex-direction:column;gap:12px}
@media (max-width:720px){.footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}}
.footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#9E9C92}
.footer__bottom a{color:#9E9C92;text-decoration:underline}

/* Page-specific */
.header-right{display:flex;gap:28px;align-items:center;justify-content:flex-end}
.mission-hero-img img,.hp-img img{width:100%;height:700px;object-fit:cover}
.team-hero img{width:100%;height:560px;object-fit:cover}
.faq__aside img{width:100%;height:260px;object-fit:cover}
@media (max-width:1100px){.mission-hero-text,.mission-hero-img,.hp-text,.hp-img{grid-column:1 / -1 !important}.mission-hero-img img,.hp-img img{height:460px}}
@media (max-width:720px){.team-hero img{height:320px}}
[hidden]{display:none!important}
@media (max-width:720px){.steps-line{gap:10px;font-size:11px;letter-spacing:.08em}.steps-line i{width:14px}}
