*{margin:0;padding:0;box-sizing:border-box}
:root{--cream:#FAF7F2;--paper:#fff;--ink:#1A1917;--soft:#6B665E;--line:#E4DDD2;--gold:#A8894F;--deep:#2C3A32}
body{background:var(--cream);color:var(--ink);font:400 16.5px/1.72 'Jost',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.ser{font-family:'Cormorant Garamond',Georgia,serif}
a{color:inherit;text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 30px}
.narrow{max-width:760px;margin:0 auto;padding:0 30px}
section{padding:96px 0}
.salebar{background:var(--ink);color:var(--cream);font-size:12.5px;font-weight:400;letter-spacing:.3px;padding:10px 20px;display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}
.sb-tag{border:1px solid var(--gold);color:var(--gold);font-size:9.5px;font-weight:500;letter-spacing:2px;padding:4px 10px}
.salebar a{border-bottom:1px solid rgba(250,247,242,.3);white-space:nowrap}
header.site{position:sticky;top:0;z-index:60;background:rgba(250,247,242,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hd{display:flex;align-items:center;height:86px}
.logo{font-family:'Cormorant Garamond';font-size:30px;font-weight:500;letter-spacing:.06em}
.logo span{color:var(--gold)}
nav.main{display:flex;gap:38px;margin-left:auto;font-size:12.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--soft)}
nav.main a{padding-bottom:3px;border-bottom:1px solid transparent}
nav.main a:hover,nav.main a.on{color:var(--ink);border-color:var(--gold)}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--cream);font-size:11.5px;letter-spacing:2px;text-transform:uppercase;padding:15px 30px;border:1px solid var(--ink);cursor:pointer;font-family:inherit;transition:.25s}
.btn:hover{background:transparent;color:var(--ink)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#fff}
.btn.gold:hover{background:transparent;color:var(--gold)}
.btn.line{background:transparent;color:var(--ink)}
.btn.line:hover{background:var(--ink);color:var(--cream)}
.btn.sm{padding:11px 22px;font-size:10.5px}
.hero{padding:90px 0 100px;border-bottom:1px solid var(--line)}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:center}
.eyebrow{font-size:11px;letter-spacing:3.4px;text-transform:uppercase;color:var(--gold);margin-bottom:26px}
h1{font-family:'Cormorant Garamond';font-size:clamp(44px,6vw,74px);line-height:1.04;font-weight:300;letter-spacing:-.01em}
h1 em{font-style:italic;color:var(--gold)}
.lead{color:var(--soft);font-size:18px;margin:28px 0 38px;max-width:440px;line-height:1.8}
.cta{display:flex;gap:16px;flex-wrap:wrap}
.plate{aspect-ratio:3/4;background:linear-gradient(165deg,#DCD3C4,#C9BCA8 45%,#A89B85);position:relative;display:grid;place-items:center}
.plate:after{content:"";position:absolute;inset:16px;border:1px solid rgba(250,247,242,.45)}
.plate .mk{position:relative;text-align:center;color:var(--cream)}
.plate .mk .n{font-family:'Cormorant Garamond';font-size:62px;font-weight:300;line-height:1}
.plate .mk .l{font-size:10.5px;letter-spacing:3.6px;text-transform:uppercase;margin-top:12px;opacity:.9}
.rule{width:46px;height:1px;background:var(--gold);margin:26px 0}
.rule.c{margin:26px auto}
.sec-h{margin-bottom:60px}
.sec-h.c{text-align:center;max-width:660px;margin-left:auto;margin-right:auto}
.k{font-size:10.5px;letter-spacing:3.2px;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
h2{font-family:'Cormorant Garamond';font-size:clamp(32px,4.4vw,50px);line-height:1.12;font-weight:300}
h2 em{font-style:italic;color:var(--gold)}
.sec-h p{color:var(--soft);margin-top:20px;font-size:17px;line-height:1.8}
.grid{display:grid;gap:40px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
/* editorial collection */
.jrn{border-top:1px solid var(--line);padding:44px 0;display:grid;grid-template-columns:150px 1fr 190px;gap:44px;align-items:start;transition:.3s}
.jrn:hover{background:rgba(255,255,255,.55)}
.jrn:last-child{border-bottom:1px solid var(--line)}
.jrn .no{font-family:'Cormorant Garamond';font-size:46px;font-weight:300;color:var(--gold);line-height:.9}
.jrn .no small{display:block;font-family:'Jost';font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--soft);margin-top:10px}
.jrn h3{font-family:'Cormorant Garamond';font-size:30px;font-weight:400;margin-bottom:12px;line-height:1.2}
.jrn p{color:var(--soft);font-size:15.5px;max-width:520px}
.jrn .meta{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--soft);margin-top:18px}
.jrn .pr{text-align:right}
.jrn .pr .f{font-family:'Cormorant Garamond';font-size:27px;font-weight:400}
.jrn .pr .s{font-size:10.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--soft);margin-top:5px}
.card{background:var(--paper);border:1px solid var(--line);padding:40px}
.card h3{font-family:'Cormorant Garamond';font-size:25px;font-weight:400;margin-bottom:14px}
.card p{color:var(--soft);font-size:15.5px}
.card .num{font-family:'Cormorant Garamond';font-size:34px;color:var(--gold);font-weight:300;margin-bottom:14px;display:block;line-height:1}
.quote{background:var(--deep);color:var(--cream);padding:100px 0;text-align:center}
.quote p{font-family:'Cormorant Garamond';font-size:clamp(25px,3.4vw,38px);font-weight:300;font-style:italic;line-height:1.42;max-width:840px;margin:0 auto}
.quote .att{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;margin-top:34px;color:rgba(250,247,242,.6)}
table.t{width:100%;border-collapse:collapse;font-size:15.5px}
table.t th{text-align:left;padding:16px 0;border-bottom:1px solid var(--ink);font-size:10.5px;letter-spacing:2.4px;text-transform:uppercase;color:var(--soft);font-weight:400}
table.t td{padding:22px 0;border-bottom:1px solid var(--line);vertical-align:top}
table.t td:first-child{padding-right:34px;width:32%}
footer.site{background:var(--ink);color:rgba(250,247,242,.65);padding:76px 0 36px;font-size:14.5px}
.fg{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:52px}
footer .logo{color:var(--cream);display:inline-block;margin-bottom:18px}
footer h5{color:var(--cream);font-size:10.5px;letter-spacing:2.4px;text-transform:uppercase;margin-bottom:18px;font-weight:400}
footer a{display:block;padding:6px 0}
footer a:hover{color:var(--gold)}
.fb{border-top:1px solid rgba(250,247,242,.14);padding-top:26px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12.5px;letter-spacing:.4px}
.ov{position:fixed;inset:0;background:rgba(26,25,23,.78);z-index:200;display:none;place-items:center;padding:22px}
.ov.on{display:grid}
.modal{background:var(--cream);padding:48px;max-width:480px;width:100%;position:relative}
.modal h3{font-family:'Cormorant Garamond';font-size:31px;font-weight:300;margin-bottom:10px}
.modal p{color:var(--soft);font-size:15px;margin-bottom:26px}
.fld{margin-bottom:18px}
.fld label{display:block;font-size:10px;letter-spacing:2.2px;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.fld input,.fld select{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);padding:9px 0;font:inherit;font-size:16px;color:var(--ink)}
.fld input:focus,.fld select:focus{outline:none;border-color:var(--gold)}
.x{position:absolute;top:20px;right:24px;background:none;border:none;color:var(--soft);font-size:26px;cursor:pointer;line-height:1}
@media(max-width:940px){.hero-in{grid-template-columns:1fr;gap:52px}.plate{max-width:340px}.g3,.g2{grid-template-columns:1fr}.jrn{grid-template-columns:1fr;gap:18px}.jrn .pr{text-align:left}.fg{grid-template-columns:1fr 1fr}nav.main{display:none}}
@media(max-width:600px){section{padding:62px 0}.fg{grid-template-columns:1fr}.modal{padding:32px 24px}.quote{padding:66px 0}}


/* ================= UPGRADE KIT ================= */
/* --- scrolling ticker --- */
.ticker{background:#1A1917;color:#fff;overflow:hidden;white-space:nowrap;padding:11px 0;font-size:13px;font-weight:700;letter-spacing:1.1px}
.ticker-in{display:inline-block;animation:tscroll 34s linear infinite}
.ticker:hover .ticker-in{animation-play-state:paused}
@keyframes tscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tk{margin:0 30px}
.tk b{color:#A8894F}

/* --- floating whatsapp --- */
.wafloat{position:fixed;bottom:22px;right:22px;z-index:120;background:#25D366;color:#06331A;border-radius:99px;padding:13px 21px;font-weight:800;font-size:14px;
  box-shadow:0 8px 26px rgba(37,211,102,.4);display:flex;gap:9px;align-items:center;transition:.18s;animation:wapulse 2.8s ease-in-out infinite}
.wafloat:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(37,211,102,.5)}
@keyframes wapulse{0%,100%{box-shadow:0 8px 26px rgba(37,211,102,.4)}50%{box-shadow:0 8px 26px rgba(37,211,102,.4),0 0 0 12px rgba(37,211,102,0)}}
@media(max-width:600px){.wafloat{bottom:16px;right:16px;padding:12px 17px;font-size:13px}}

/* --- photography with gradient fallback --- */
.ph{position:relative;overflow:hidden;border-radius:0px;background-image:linear-gradient(135deg,#A8894F22,#2C3A3222 55%,#1A191711)}
.ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.2,.7,.3,1)}
.ph:hover img{transform:scale(1.055)}
.ph.fail img{visibility:hidden}
.ph .cap{position:absolute;left:0;right:0;bottom:0;padding:22px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff}
.ph .cap b{display:block;font-size:18px;font-weight:800;margin-bottom:3px}
.ph .cap span{font-size:12.5px;opacity:.85}
.ph .badge{position:absolute;top:14px;left:14px;background:#A8894F;color:#ffffff;font-size:11px;font-weight:800;letter-spacing:.8px;padding:6px 12px;border-radius:99px}

/* --- full-bleed photo band --- */
.pband{position:relative;min-height:420px;display:grid;place-items:center;text-align:center;overflow:hidden;
  background-image:linear-gradient(135deg,#A8894F33,#1A1917)}
.pband img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pband:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.72))}
.pband .in{position:relative;z-index:2;max-width:820px;padding:70px 26px;color:#fff}
.pband .in .q{font-size:clamp(24px,3.4vw,38px);font-weight:800;line-height:1.3;letter-spacing:-.02em}
.pband .in .a{margin-top:20px;font-size:12.5px;letter-spacing:2.6px;text-transform:uppercase;opacity:.8}

/* --- photo grid --- */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pgrid .ph{aspect-ratio:4/5}
.pgrid.wide{grid-template-columns:2fr 1fr 1fr}
@media(max-width:900px){.pgrid,.pgrid.wide{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.pgrid,.pgrid.wide{grid-template-columns:1fr}}

/* --- stat strip --- */
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#E4DDD2;border:1px solid #E4DDD2;border-radius:0px;overflow:hidden}
.strip div{background:#ffffff;padding:26px 22px;text-align:center}
.strip b{display:block;font-size:32px;font-weight:800;letter-spacing:-.03em;color:#A8894F;line-height:1}
.strip span{display:block;margin-top:9px;font-size:12.5px;color:#6B665E;line-height:1.45}
@media(max-width:820px){.strip{grid-template-columns:1fr 1fr}}

/* --- FAQ accordion --- */
.faq{border-top:1px solid #E4DDD2}
.faq details{border-bottom:1px solid #E4DDD2}
.faq summary{padding:22px 44px 22px 0;font-size:17px;font-weight:700;cursor:pointer;list-style:none;position:relative;transition:.16s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:#A8894F}
.faq summary:after{content:"+";position:absolute;right:6px;top:19px;font-size:24px;font-weight:400;color:#A8894F;transition:transform .22s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{padding:0 40px 24px 0;color:#6B665E;font-size:15px;line-height:1.75;margin:0}

/* --- reveal on scroll --- */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.09s}.rv.d2{transition-delay:.18s}.rv.d3{transition-delay:.27s}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.ticker-in{animation:none}.wafloat{animation:none}}
