:root{--ink:#1a1a1a;--acc:#c2185b;--cream:#f6efe7;--grey:#6b6b6b;--line:#e3d8cc}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:#fffdfb;line-height:1.55}
h1,h2,.logo{font-family:'Playfair Display',Georgia,serif}
a{color:inherit}img{max-width:100%;display:block}
.nav{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:14px 5vw;background:rgba(255,253,251,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.logo{font-weight:700;text-decoration:none;font-size:1.15rem}
.nav nav{display:flex;gap:22px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.nav nav a{text-decoration:none;color:var(--grey)}.nav nav a:hover{color:var(--acc)}
section{padding:70px 5vw;max-width:1100px;margin:0 auto}
section.alt{max-width:none;background:var(--cream)}section.alt>*{max-width:1100px;margin-left:auto;margin-right:auto}
h2{font-size:2.1rem;margin:0 0 6px;font-weight:700}
h2::after{content:"";display:block;width:40px;height:2px;background:var(--acc);margin-top:10px}
.sub{color:var(--grey);margin:10px 0 30px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;min-height:80vh}
.eyebrow{color:var(--acc);font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;margin:0}
h1{font-size:clamp(3rem,8vw,5.6rem);line-height:1;margin:10px 0 20px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.lead{font-size:1.08rem;max-width:520px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
.btn{background:var(--ink);color:#fff;text-decoration:none;padding:13px 22px;border-radius:30px;font-size:.9rem;font-weight:500}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.links{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:8px}
.links a{text-decoration:none;font-size:.85rem;display:flex;flex-direction:column}.links b{color:var(--acc);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.links.c{justify-content:center}
.hero-img img{border-radius:18px;width:100%;max-height:78vh;object-fit:cover;object-position:center top;box-shadow:0 20px 50px rgba(0,0,0,.12)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}
.card small{color:var(--acc);font-weight:600;letter-spacing:.1em;font-size:.72rem;display:block;margin-bottom:6px}
.card strong{display:block;font-family:'Playfair Display',serif;font-size:1.9rem;line-height:1.1}
.card em{display:block;font-style:normal;color:var(--grey);font-size:.8rem;margin-bottom:14px}
.totals{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;background:var(--ink);color:#fff;border-radius:12px;padding:16px 22px;margin-top:14px;font-weight:600;font-size:.92rem}
.aud{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;margin-top:34px;align-items:start}
.aud small{color:var(--acc);font-weight:600;letter-spacing:.1em;font-size:.72rem;display:block;margin-bottom:10px}
.g strong{font-family:'Playfair Display',serif;font-size:3.6rem;line-height:1;display:inline-block;margin-right:6px}.g strong.s{font-size:1.8rem;margin-left:18px}
.g em{font-style:normal;color:var(--grey)}
.bar{display:grid;grid-template-columns:54px 1fr 50px;gap:10px;align-items:center;margin:7px 0;font-size:.85rem}
.bar i{height:9px;background:#eadfd2;border-radius:6px;overflow:hidden;display:block}.bar u{display:block;height:100%;background:var(--acc);border-radius:6px}.bar b{text-align:right}
.reels{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.reel{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;text-align:center;font-size:.85rem}
.reel img{border-radius:10px;width:100%;margin-bottom:14px}
.reel strong{display:block;font-family:'Playfair Display',serif;font-size:2.2rem;line-height:1}.reel em{font-style:normal;color:var(--grey);display:block;margin-bottom:10px}
.reel b{display:block;color:var(--acc);letter-spacing:.08em;font-size:.75rem;margin-bottom:6px}.reel span{display:block}
.vids{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:26px;margin-top:20px}
.vid{margin:0;text-align:center}
.phone{background:#111;border-radius:34px;padding:9px;box-shadow:0 12px 30px rgba(0,0,0,.2);aspect-ratio:9/18.5;overflow:hidden}
.phone video{width:100%;height:100%;object-fit:cover;border-radius:26px;background:#000;display:block}
.vid figcaption{font-size:.85rem;color:var(--grey);margin-top:12px}
.brand{display:grid;grid-template-columns:1fr 1.3fr;gap:30px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:18px}
.bl img{max-height:52px;width:auto;margin-bottom:14px}.bl b{display:block;color:var(--acc);font-size:.76rem;letter-spacing:.08em}.bl span{color:var(--grey);font-size:.86rem}
.tt{border-radius:8px;border:1px solid var(--line)}
.shots{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.shots figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}
.shots b{color:var(--acc);font-size:.76rem;letter-spacing:.1em;display:block;margin-bottom:10px}
.shots figcaption{color:var(--grey);font-size:.78rem;margin-top:8px}
.contact{text-align:center}.contact h2::after{margin-left:auto;margin-right:auto}
.contact p a{font-size:1.4rem;text-decoration:none;border-bottom:1px solid var(--acc)}
.foot{color:var(--grey);font-size:.8rem;margin-top:40px}
@media(max-width:800px){.hero,.aud,.brand{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.reels{grid-template-columns:1fr}.shots{grid-template-columns:1fr}.nav nav{display:none}.hero{min-height:auto}h1{font-size:3.2rem}}
.byline{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#8a7f76;margin:6px 0 14px}
.contact .byline{margin:0 0 10px}
.reel b{margin-bottom:12px}.reel img{margin-bottom:0;border:1px solid var(--line)}
.rhead{display:flex;align-items:center;gap:14px;margin-bottom:14px;text-align:left}
.reel .cov{width:92px;height:92px;object-fit:cover;object-position:top;border-radius:12px;margin:0;border:0}
.rhead b{margin:0;font-size:.85rem}
.phone.top{max-width:230px;margin:0 auto 12px}
.reel .tt2{margin:0 0 12px}
.reels{align-items:start}
