@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/cormorant-garamond-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/cormorant-garamond-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url("/assets/fonts/cormorant-garamond-latin-500-italic.woff2") format("woff2")}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/instrument-sans-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/instrument-sans-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/instrument-sans-latin-600-normal.woff2") format("woff2")}
:root{--burgundy:#542B38;--wine:#301B26;--rose:#C99B85;--ivory:#F8F0E9;--text:#2D2025;--muted:#6d5a60;--line:rgba(84,43,56,.14);--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--r:22px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--sans);color:var(--text);background:var(--ivory);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1160px,100% - 48px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--rose);color:var(--wine);padding:8px 14px;border-radius:8px;z-index:100}.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--rose);outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.01em}
.eyebrow{font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--rose);font-weight:600;display:flex;align-items:center;gap:12px;margin-bottom:18px}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
.eyebrow.center{justify-content:center}.eyebrow.center::after{content:"";width:28px;height:1px;background:currentColor}
section{padding:112px 0;position:relative}
h2{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.lead{font-size:1.1rem;color:var(--muted);max-width:56ch}
/* Header */
.nav{position:fixed;inset:0 0 auto;z-index:50;transition:background .35s,box-shadow .35s}
.nav.solid{background:rgba(48,27,38,.94);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(201,155,133,.18)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ivory);font-family:var(--serif);font-size:1.5rem;letter-spacing:.22em;font-weight:600}
.brand img{width:38px;height:38px;border-radius:11px}
.menu{display:flex;gap:30px;list-style:none;padding:0}
.menu a{text-decoration:none;color:rgba(248,240,233,.82);font-size:.92rem;transition:color .2s}.menu a:hover{color:var(--rose)}
.burger{display:none;background:none;border:0;color:var(--ivory);width:44px;height:44px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:currentColor;margin:5px auto;transition:.3s}
/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:999px;font-weight:600;font-size:.95rem;text-decoration:none;border:1px solid transparent;transition:transform .3s var(--ease),background .3s,box-shadow .3s;cursor:pointer;font-family:inherit}
.btn:hover{transform:translateY(-2px)}
.btn-rose{background:var(--rose);color:var(--wine);box-shadow:0 10px 30px -10px rgba(201,155,133,.7)}.btn-rose:hover{background:#d8ad99}
.btn-ghost{border-color:rgba(248,240,233,.4);color:var(--ivory)}.btn-ghost:hover{background:rgba(248,240,233,.08)}
.btn-wine{background:var(--burgundy);color:var(--ivory)}.btn-wine:hover{background:var(--wine)}
.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}
/* Hero */
.hero{min-height:100vh;display:flex;align-items:center;padding:130px 0 90px;color:var(--ivory);background:radial-gradient(ellipse 70% 60% at 75% 40%,#6b3a4a 0%,transparent 70%),var(--wine);overflow:hidden}
.pattern{position:absolute;inset:0;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23C99B85' stroke-width='1'%3E%3Cpath d='M40 6l9.5 21.5L72 24l-14 18 14 18-22.5-3.5L40 74l-9.5-17.5L8 60l14-18-14-18 22.5 3.5z'/%3E%3Ccircle cx='40' cy='42' r='9'/%3E%3C/g%3E%3C/svg%3E");mask-image:radial-gradient(ellipse at 70% 40%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 0%,transparent 75%)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;position:relative}
.hero h1{font-size:clamp(3rem,7vw,5.6rem);margin-bottom:26px}
.hero h1 em{color:var(--rose);font-style:italic}
.hero p.lead{color:rgba(248,240,233,.78);margin-bottom:38px}
.cta{display:flex;gap:14px;flex-wrap:wrap}
.hero .note{margin-top:26px;font-size:.85rem;color:rgba(248,240,233,.55)}
.hero-art{position:relative;display:grid;place-items:center}
.hero-art::before{content:"";position:absolute;width:88%;aspect-ratio:1;border:1px solid rgba(201,155,133,.35);border-radius:50%;box-shadow:0 0 0 28px rgba(201,155,133,.05)}
.hero-art .phone.back{position:absolute;transform:translateX(-62%) rotate(-7deg) scale(.82);opacity:.9;filter:brightness(.8)}
.hero-art .phone.front{position:relative;animation:float 7s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-12px)}}
/* Phone */
.phone{width:min(260px,62vw);aspect-ratio:480/938;padding:9px;border-radius:38px;background:linear-gradient(145deg,#4a3640,#17100d);box-shadow:0 40px 80px -20px rgba(0,0,0,.55),inset 0 0 0 1.5px rgba(201,155,133,.35)}
.phone img{width:100%;height:100%;border-radius:30px;object-fit:cover;background:#fff}
/* About */
.about .wrap{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.about h2{margin-bottom:22px}.about p+p{margin-top:16px}
.values{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.value{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px}
.value h3{font-size:1.5rem;color:var(--burgundy);margin-bottom:6px}.value p{font-size:.92rem;color:var(--muted)}
/* Features */
.features{background:#fff}
.head{text-align:center;max-width:680px;margin:0 auto 64px}.head .lead{margin:16px auto 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--r);padding:36px 30px;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s}
.card:hover{transform:translateY(-6px);box-shadow:0 24px 50px -24px rgba(84,43,56,.35);border-color:var(--rose)}
.icon{width:56px;height:56px;border-radius:16px;background:var(--burgundy);display:grid;place-items:center;margin-bottom:24px}
.icon svg{width:28px;height:28px;stroke:var(--rose);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:1.7rem;margin-bottom:10px;color:var(--burgundy)}.card p{color:var(--muted);font-size:.97rem}
/* Gallery */
.gallery{background:var(--wine);color:var(--ivory);overflow:hidden}
.gallery .lead{color:rgba(248,240,233,.7)}
.shots{display:flex;gap:28px;overflow-x:auto;padding:10px 24px 40px;scroll-snap-type:x mandatory;justify-content:safe center}
.shots figure{flex:0 0 auto;scroll-snap-align:center;text-align:center}
.shots figcaption{margin-top:16px;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rose)}
.shots .phone{width:230px}
/* Coming soon */
.soon-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:860px;margin:0 auto}
.soon{position:relative;border:1.5px dashed rgba(84,43,56,.3);border-radius:var(--r);padding:40px 34px;background:rgba(255,255,255,.5)}
.badge{display:inline-block;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;background:var(--rose);color:var(--wine);padding:5px 12px;border-radius:999px;margin-bottom:18px}
.soon h3{font-size:1.9rem;color:var(--burgundy);margin-bottom:8px}.soon p{color:var(--muted)}
/* Promise */
.promise{background:var(--burgundy);color:var(--ivory);text-align:center;overflow:hidden}
.promise blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.1;max-width:15ch;margin:0 auto 40px}
.promise blockquote span{color:var(--rose)}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:880px;margin:0 auto;text-align:left}
.pillar{border-top:1px solid rgba(201,155,133,.5);padding-top:18px;font-size:.97rem;color:rgba(248,240,233,.82)}
.pillar strong{display:block;font-family:var(--serif);font-size:1.4rem;font-weight:500;color:var(--rose);margin-bottom:4px}
/* Support */
.support .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}
.support .phones{display:flex;justify-content:center}
.support h2{margin-bottom:20px}.support p{margin-bottom:16px;color:var(--muted)}.support .btn{margin-top:14px}
/* Download */
.download{background:linear-gradient(180deg,var(--wine),#241520);color:var(--ivory)}
.download .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.download .phones{display:flex;justify-content:center}
.download p{color:rgba(248,240,233,.75);margin:18px 0 32px;max-width:46ch}
.play{display:inline-flex;align-items:center;gap:14px;background:#000;border:1px solid #a6a6a6;border-radius:12px;padding:10px 22px 10px 16px;color:#fff;text-decoration:none;opacity:.6;cursor:not-allowed}
.play svg{width:30px;height:30px}.play small{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;line-height:1.1}.play b{font-size:1.3rem;font-weight:600;line-height:1.1}
.status{margin-top:16px;font-size:.88rem;color:var(--rose)}
/* FAQ */
.faq .wrap{max-width:820px}
details{border-bottom:1px solid var(--line);padding:6px 0}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;font-family:var(--serif);font-size:1.5rem;color:var(--burgundy)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--sans);font-size:1.6rem;color:var(--rose);transition:transform .3s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 0 22px;color:var(--muted);max-width:64ch}
/* Contact */
.contact{background:#fff;text-align:center}
.mail{display:inline-block;margin-top:28px;padding:22px 40px;border:1px solid var(--line);border-radius:var(--r);background:var(--ivory)}
.mail small{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--rose);font-weight:600}
.mail span{font-family:var(--serif);font-size:1.7rem;color:var(--burgundy)}
/* Footer */
footer{background:var(--wine);color:rgba(248,240,233,.75);padding:70px 0 34px}
.foot{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:40px;border-bottom:1px solid rgba(201,155,133,.2)}
.foot p{margin-top:12px;font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--rose)}
.foot ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,auto);gap:10px 44px}
.foot a{text-decoration:none;font-size:.93rem}.foot a:hover{color:var(--rose)}
.copy{padding-top:26px;font-size:.84rem;color:rgba(248,240,233,.5)}
/* Legal pages */
.legal-hero{background:var(--wine);color:var(--ivory);padding:150px 0 70px;position:relative;overflow:hidden}
.legal-hero h1{font-size:clamp(2.6rem,6vw,4.4rem)}.legal-hero p{color:rgba(248,240,233,.7);margin-top:12px}
.legal{padding:70px 0 100px}.legal .wrap{max-width:780px}
.legal h2{font-size:2rem;color:var(--burgundy);margin:46px 0 12px}
.legal p,.legal li{color:#4a3a40;margin-bottom:12px}.legal ul{padding-left:22px}
.confirm{background:#fff3d6;border:1px solid #e3c06b;border-radius:8px;padding:2px 8px;font-size:.85em;font-weight:600;color:#7a5a00}
.draftbox{background:#fff3d6;border:1px solid #e3c06b;border-radius:var(--r);padding:20px 24px;margin-bottom:34px;color:#5c4400}
.draftbox strong{display:block;margin-bottom:6px}
/* Reveal */
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.rv.in{opacity:1;transform:none}
.no-js .rv{opacity:1;transform:none}
@media(max-width:960px){
 section{padding:80px 0}
 .hero .wrap,.about .wrap,.support .wrap,.download .wrap{grid-template-columns:1fr;gap:48px}
 .hero{text-align:center}.hero .cta{justify-content:center}.hero .lead{margin-inline:auto}.hero .eyebrow{justify-content:center}
 .grid{grid-template-columns:1fr 1fr}.pillars,.soon-grid{grid-template-columns:1fr}
 .download .wrap,.support .wrap{text-align:center}.download p{margin-inline:auto}.support .phones{order:-1}
 .burger{display:block}
 .menu{position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--wine);padding:8px 24px 20px;display:none;border-bottom:1px solid rgba(201,155,133,.2)}
 .menu.open{display:flex}.menu a{display:block;padding:14px 0;font-size:1.05rem}
}
@media(max-width:600px){.grid,.values{grid-template-columns:1fr}.hero-art .phone.back{display:none}.foot ul{grid-template-columns:1fr 1fr}
.mail{max-width:100%;padding:20px 22px}.mail span{font-size:1.4rem;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none}}
