:root{
  --ink:#0c0b0b;
  --ink-2:#151011;
  --wine:#2a0b0e;
  --wine-2:#4b1419;
  --gold:#c9a64a;
  --gold-2:#f1d87d;
  --cream:#f4efe4;
  --paper:#fbf8f1;
  --muted:#a79d91;
  --white:#fff;
  --line:rgba(201,166,74,.28);
  --shadow:0 24px 70px rgba(0,0,0,.22);
  --radius:26px;
  --header:86px;
  --font-display:Georgia,'Times New Roman',serif;
  --font-body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;max-width:100%;overflow-x:clip}
body{margin:0;background:var(--paper);color:#1a1715;font-family:var(--font-body);max-width:100%;overflow-x:clip;line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
::selection{background:var(--gold);color:#111}
.container{width:min(1220px,calc(100% - 40px));margin-inline:auto}
.section{position:relative;padding:110px 0}
.section-dark{background:var(--ink);color:#fff}
.section-wine{background:linear-gradient(135deg,#130808,#351014 60%,#1a090b);color:#fff}
.section-cream{background:var(--cream)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.eyebrow::before{content:"";width:44px;height:1px;background:currentColor}
.display{font-family:var(--font-display);font-weight:500;line-height:.98;letter-spacing:-.035em;margin:18px 0 24px;font-size:clamp(2.8rem,6.5vw,6.8rem)}
.heading{font-family:var(--font-display);font-weight:500;line-height:1.05;letter-spacing:-.025em;margin:15px 0 22px;font-size:clamp(2.25rem,4.8vw,4.9rem)}
.subheading{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.9rem);line-height:1.1;margin:0 0 18px}
.lead{font-size:clamp(1.05rem,1.4vw,1.28rem);color:#5d554d;max-width:760px}
.section-dark .lead,.section-wine .lead{color:#d8d1c7}
.muted{color:#746b63}.section-dark .muted,.section-wine .muted{color:#bdb4aa}
.gold{color:var(--gold-2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border:1px solid transparent;font-weight:800;letter-spacing:.02em;transition:.3s ease;position:relative;overflow:hidden}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.18) 48%,transparent 76%);transform:translateX(-130%);transition:.65s ease}
.btn:hover::after{transform:translateX(130%)}
.btn-primary{background:linear-gradient(135deg,#f2d67a,#bb8d31);color:#17110a;box-shadow:0 12px 35px rgba(197,154,52,.2)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(197,154,52,.32)}
.btn-outline{border-color:rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.03)}
.btn-outline:hover{border-color:var(--gold);color:var(--gold-2);transform:translateY(-3px)}
.btn-dark{background:#151313;color:#fff;border-color:#151313}.btn-dark:hover{background:#2a0b0e;transform:translateY(-3px)}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.skip-link{position:fixed;left:12px;top:-100px;background:#fff;color:#111;padding:10px 14px;z-index:9999}.skip-link:focus{top:12px}
/* Header */
.topbar{background:#090909;color:#e6ded2;border-bottom:1px solid rgba(255,255,255,.08);font-size:.85rem}
.topbar .container{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:36px}
.topbar-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.topbar a:hover{color:var(--gold-2)}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(14,11,11,.96);border-bottom:1px solid rgba(201,166,74,.2);backdrop-filter:blur(14px)}
.nav{min-height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;min-width:210px}
.brand img{width:98px;height:64px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.25))}
.brand-copy{display:none;color:#fff;line-height:1.1}.brand-copy b{font-family:var(--font-display);font-size:1.1rem}.brand-copy span{font-size:.7rem;letter-spacing:.12em;color:var(--gold-2);text-transform:uppercase}
.desktop-nav{display:flex;align-items:center;gap:26px;color:#f4efe9;font-weight:700;font-size:.93rem}
.desktop-nav a{position:relative;padding:31px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:21px;height:1px;background:var(--gold);transition:.25s}.desktop-nav a:hover::after,.desktop-nav a.active::after{right:0}.desktop-nav a:hover,.desktop-nav a.active{color:var(--gold-2)}
.header-actions{display:flex;gap:10px;align-items:center}.header-actions .btn{min-height:44px;padding:0 18px;font-size:.88rem}
.menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);background:#1d1516;color:#fff;align-items:center;justify-content:center;border-radius:0;position:relative}
.menu-toggle span,.menu-toggle::before,.menu-toggle::after{content:"";position:absolute;width:20px;height:2px;background:currentColor;transition:.25s}.menu-toggle::before{transform:translateY(-7px)}.menu-toggle::after{transform:translateY(7px)}.menu-toggle.open span{opacity:0}.menu-toggle.open::before{transform:rotate(45deg)}.menu-toggle.open::after{transform:rotate(-45deg)}
.mobile-drawer{position:fixed;inset:0;z-index:1100;pointer-events:none;visibility:hidden}
.drawer-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);opacity:0;transition:.3s}
.drawer-panel{position:absolute;right:0;top:0;height:100dvh;width:min(420px,100%);background:#100d0e;color:#fff;transform:translateX(105%);transition:.36s cubic-bezier(.22,.8,.25,1);display:flex;flex-direction:column;overflow-y:auto;border-left:1px solid var(--line)}
.mobile-drawer.open{visibility:visible;pointer-events:auto}.mobile-drawer.open .drawer-backdrop{opacity:1}.mobile-drawer.open .drawer-panel{transform:none}
.drawer-head{padding:20px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#100d0e;z-index:2}.drawer-head img{width:96px;height:58px;object-fit:contain}.drawer-close{width:44px;height:44px;border:1px solid var(--line);background:#1d1516;color:#fff;font-size:1.4rem}
.drawer-nav{display:grid;padding:12px 22px}.drawer-nav a{padding:17px 4px;border-bottom:1px solid rgba(255,255,255,.08);font-family:var(--font-display);font-size:1.35rem}.drawer-nav a.active,.drawer-nav a:hover{color:var(--gold-2)}
.drawer-cta{margin:20px 22px 30px}.drawer-contact{padding:0 22px 28px;color:#c9c1b7;font-size:.93rem}.drawer-contact a{display:block;margin-top:8px;color:#fff}
/* Hero */
.hero{min-height:calc(100vh - 36px);background:#0e0b0b;color:#fff;position:relative;display:flex;align-items:stretch;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.72) contrast(1.06);transform:scale(1.035);animation:heroZoom 14s ease-out forwards}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,6,6,.94) 0%,rgba(18,7,9,.82) 45%,rgba(8,7,7,.35) 74%,rgba(8,7,7,.15) 100%),linear-gradient(0deg,rgba(9,7,7,.8),transparent 55%)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(201,166,74,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,166,74,.05) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000 0,transparent 78%)}
.hero .container{position:relative;z-index:3;display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center;padding-top:72px;padding-bottom:72px}
.hero-copy{max-width:760px}.hero .display{font-size:clamp(4rem,7.2vw,7.6rem);max-width:900px}.hero .display em{font-style:normal;color:var(--gold-2)}
.hero-copy p{font-size:1.16rem;max-width:650px;color:#d8d1c9}
.hero-kicker{display:flex;gap:12px;align-items:center;text-transform:uppercase;letter-spacing:.18em;font-size:.79rem;color:#e6d099;font-weight:800}.hero-kicker::before{content:"";width:54px;height:1px;background:var(--gold)}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0 30px}.hero-badges span{padding:10px 14px;border:1px solid rgba(201,166,74,.35);background:rgba(15,11,11,.55);font-size:.84rem;letter-spacing:.04em}
.hero-visual{position:relative;min-height:610px}.hero-frame{position:absolute;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(223,189,98,.35);background:#160d0f}.hero-frame img{width:100%;height:100%;object-fit:cover}.hero-frame.big{right:0;top:30px;width:74%;height:72%}.hero-frame.small{left:0;bottom:30px;width:50%;height:46%;z-index:2}.hero-frame::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.1);pointer-events:none}.hero-caption{position:absolute;right:4%;bottom:0;width:68%;padding:18px 22px;background:#110d0e;border-left:3px solid var(--gold);z-index:4}.hero-caption strong{font-family:var(--font-display);font-size:1.5rem}.hero-caption span{display:block;color:#bcb2a8;font-size:.85rem;margin-top:4px}
.hero-scroll{position:absolute;left:calc((100% - min(1220px,calc(100% - 40px)))/2);bottom:22px;z-index:4;color:#cbbfae;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;writing-mode:vertical-rl;display:flex;align-items:center;gap:10px}.hero-scroll::after{content:"";width:1px;height:54px;background:linear-gradient(var(--gold),transparent)}
@keyframes heroZoom{to{transform:scale(1)}}
/* Trust strip */
.trust-strip{background:#f2ead9;border-top:1px solid #ddccb0;border-bottom:1px solid #ddccb0}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.trust-item{padding:22px 28px;border-right:1px solid #d9c8a9}.trust-item:last-child{border-right:0}.trust-item strong{display:block;font-family:var(--font-display);font-size:1.4rem;color:#2a1111}.trust-item span{font-size:.84rem;color:#6d6155}
/* Editorial intro */
.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.intro-sticky{position:sticky;top:130px}.intro-number{font-family:var(--font-display);font-size:10rem;line-height:.8;color:rgba(201,166,74,.18);position:absolute;right:0;top:-20px}.intro-copy{position:relative}.intro-copy p{font-size:1.13rem;color:#564f49}.signature-line{margin-top:32px;padding-top:22px;border-top:1px solid #d8cdbf;display:flex;justify-content:space-between;gap:20px}.signature-line b{font-family:var(--font-display);font-size:1.15rem}.signature-line span{color:#7f746a;font-size:.86rem}
/* Dual capabilities */
.dual-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:760px}.dual-panel{position:relative;overflow:hidden;padding:68px;display:flex;align-items:flex-end}.dual-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.dual-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,7,7,.94),rgba(9,7,7,.08) 65%)}.dual-panel:hover img{transform:scale(1.045)}.dual-content{position:relative;z-index:2;color:#fff;max-width:560px}.dual-index{font-family:var(--font-display);font-size:5rem;color:var(--gold-2);opacity:.58;line-height:1}.dual-content h3{font-family:var(--font-display);font-size:clamp(2.4rem,4vw,4rem);margin:4px 0 14px}.dual-content p{color:#dbd4cc}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--gold-2);font-weight:800;margin-top:12px}.text-link::after{content:"→";transition:.2s}.text-link:hover::after{transform:translateX(5px)}
/* service bands */
.service-bands{display:grid;gap:18px;margin-top:42px}.service-band{display:grid;grid-template-columns:210px 1fr auto;gap:32px;align-items:center;padding:14px 18px 14px 14px;border:1px solid rgba(201,166,74,.2);background:#161112;transition:.28s}.service-band:hover{border-color:rgba(229,197,108,.62);transform:translateX(7px);background:#211618}.service-band img{width:210px;height:126px;object-fit:cover}.service-band h3{font-family:var(--font-display);font-size:1.65rem;margin:0 0 5px}.service-band p{margin:0;color:#c9c0b6;font-size:.92rem}.service-band .arrow{width:48px;height:48px;border:1px solid var(--line);display:grid;place-items:center;color:var(--gold-2);font-size:1.4rem}
/* showreel grid */
.showcase-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:300px 300px;gap:18px}.showcase-card{position:relative;overflow:hidden;background:#171212}.showcase-card:first-child{grid-row:1/3}.showcase-card img{width:100%;height:100%;object-fit:cover;transition:.65s}.showcase-card:hover img{transform:scale(1.045)}.showcase-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,7,7,.85),transparent 60%)}.showcase-label{position:absolute;z-index:2;left:24px;bottom:22px;color:#fff}.showcase-label span{color:var(--gold-2);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}.showcase-label b{display:block;font-family:var(--font-display);font-size:1.55rem;margin-top:4px}
/* process */
.process{display:grid;grid-template-columns:repeat(5,1fr);margin-top:55px;border-top:1px solid rgba(255,255,255,.16)}.process-step{padding:34px 24px 10px;border-right:1px solid rgba(255,255,255,.12);position:relative}.process-step:last-child{border-right:0}.process-step::before{content:"";position:absolute;top:-5px;left:23px;width:9px;height:9px;background:var(--gold);box-shadow:0 0 0 6px rgba(201,166,74,.14)}.process-step .num{font-family:var(--font-display);font-size:3.1rem;color:rgba(240,215,127,.5)}.process-step h3{font-family:var(--font-display);font-size:1.4rem;margin:6px 0 8px}.process-step p{color:#bdb5aa;font-size:.9rem}
/* planner panel */
.planner-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.planner-visual{position:relative;min-height:650px}.planner-visual .img-a{position:absolute;left:0;top:0;width:76%;height:73%;object-fit:cover;box-shadow:var(--shadow)}.planner-visual .img-b{position:absolute;right:0;bottom:0;width:54%;height:44%;object-fit:cover;border:10px solid var(--cream);box-shadow:var(--shadow)}.planner-note{position:absolute;left:28px;bottom:22px;z-index:2;background:#130d0e;color:#fff;padding:18px 22px;border-left:3px solid var(--gold);max-width:300px}.planner-note b{font-family:var(--font-display);font-size:1.2rem}.planner-note span{display:block;color:#bdb4aa;font-size:.82rem;margin-top:4px}.check-list{display:grid;gap:0;margin:28px 0}.check-list div{padding:15px 0;border-bottom:1px solid #d8cdbf;display:flex;gap:12px;align-items:flex-start}.check-list i{font-style:normal;color:#8f6721;font-weight:900}
/* quote */
.quote-section{position:relative;min-height:520px;display:flex;align-items:center;color:#fff;background:#100b0c;overflow:hidden}.quote-section img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.2) saturate(.72)}.quote-section::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,8,9,.96),rgba(15,8,9,.54),rgba(15,8,9,.18))}.quote-copy{position:relative;z-index:2;max-width:850px}.quote-mark{font-family:var(--font-display);font-size:9rem;line-height:.5;color:var(--gold-2);opacity:.55}.quote-copy h2{font-family:var(--font-display);font-weight:500;font-size:clamp(2.7rem,5vw,5.4rem);line-height:1.03;margin:15px 0 22px}
/* why us */
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d7c9b5;border:1px solid #d7c9b5;margin-top:40px}.why-card{background:var(--paper);padding:38px;min-height:230px}.why-card .icon{width:52px;height:52px;border:1px solid #b58b37;display:grid;place-items:center;color:#8e661e;margin-bottom:22px}.why-card svg{width:26px;height:26px}.why-card h3{font-family:var(--font-display);font-size:1.55rem;margin:0 0 10px}.why-card p{color:#6a625b;margin:0}
/* FAQ */
.faq{display:grid;gap:10px;margin-top:40px}.faq-item{border:1px solid rgba(201,166,74,.25);background:#151111}.faq-btn{width:100%;border:0;background:transparent;color:#fff;text-align:left;padding:22px 24px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-family:var(--font-display);font-size:1.25rem}.faq-btn span:last-child{color:var(--gold-2);font-family:var(--font-body);transition:.25s}.faq-item.open .faq-btn span:last-child{transform:rotate(45deg)}.faq-panel{max-height:0;overflow:hidden;transition:max-height .35s ease}.faq-panel p{padding:0 24px 24px;margin:0;color:#bfb6ac;max-width:870px}
/* contact */
.contact-shell{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid #dbcdb8;background:#fff;box-shadow:var(--shadow)}.contact-info{background:#150e0f;color:#fff;padding:55px;position:relative;overflow:hidden}.contact-info::after{content:"MD";position:absolute;right:-22px;bottom:-55px;font-family:var(--font-display);font-size:13rem;color:rgba(201,166,74,.06)}.contact-info h3{font-family:var(--font-display);font-size:2.5rem;margin:0 0 20px}.contact-line{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:1}.contact-line span{display:block;color:#a99f96;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.contact-line a,.contact-line b{font-size:1.05rem;color:#fff;word-break:break-word}.contact-form{padding:55px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-weight:800;font-size:.82rem;color:#554b43}.field input,.field textarea,.field select{width:100%;border:1px solid #d9cbb7;background:#fbf8f1;padding:14px 15px;outline:none;border-radius:0;transition:.2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#9a742c;box-shadow:0 0 0 3px rgba(201,166,74,.12)}.field textarea{min-height:130px;resize:vertical}.form-note{font-size:.78rem;color:#786e65;margin-top:12px}.form-status{margin-top:14px;font-weight:700}
.map-frame{height:420px;background:#1a1414;border:1px solid #d8c8ae;overflow:hidden}.map-frame iframe{width:100%;height:100%;border:0}
/* CTA */
.cta-panel{position:relative;padding:72px;background:linear-gradient(135deg,#2e0d11,#120a0b);color:#fff;border:1px solid rgba(221,185,87,.35);overflow:hidden}.cta-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 30%,rgba(201,166,74,.18),transparent 28%),linear-gradient(rgba(201,166,74,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,166,74,.05) 1px,transparent 1px);background-size:auto,52px 52px,52px 52px}.cta-content{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.cta-content h2{font-family:var(--font-display);font-weight:500;font-size:clamp(2.7rem,5vw,5rem);line-height:1;margin:0;max-width:860px}.cta-content p{color:#d1c8bf;max-width:640px}
/* Footer */
.footer{background:#0b0909;color:#c8bfb4;border-top:1px solid rgba(201,166,74,.2)}.footer-top{padding:72px 0 50px;display:grid;grid-template-columns:1.25fr .75fr .75fr 1fr;gap:50px}.footer-brand img{width:150px;height:100px;object-fit:contain}.footer-brand p{max-width:380px;color:#a9a097}.footer h4{color:#fff;font-family:var(--font-display);font-size:1.25rem;margin:0 0 18px}.footer-links{display:grid;gap:10px}.footer-links a:hover{color:var(--gold-2)}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:20px 0;font-size:.82rem}.footer-bottom .container{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}.footer-social{display:flex;gap:10px}.footer-social a{width:38px;height:38px;border:1px solid var(--line);display:grid;place-items:center;color:#fff}.footer-social svg{width:18px;height:18px}
/* floating */
.float-stack{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:grid;gap:10px;z-index:1050}.float-btn{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 12px 26px rgba(0,0,0,.3);position:relative;transition:.25s}.float-btn svg{width:26px;height:26px}.float-btn.whatsapp{background:#168b50}.float-btn.call{background:#6e151e}.float-btn:hover{transform:translateY(-4px) scale(1.03)}.float-btn::before{content:"";position:absolute;inset:-6px;border:1px solid currentColor;border-radius:inherit;opacity:.22;animation:ripple 2.4s infinite}.float-btn.call::before{animation-delay:1.1s}@keyframes ripple{0%,100%{transform:scale(.9);opacity:.25}50%{transform:scale(1.16);opacity:0}}
.backtop{position:fixed;left:14px;bottom:18px;z-index:900;width:44px;height:44px;border:1px solid var(--line);background:#161011;color:#fff;opacity:0;pointer-events:none;transition:.25s}.backtop.show{opacity:1;pointer-events:auto}
/* inner pages */
.page-hero{min-height:560px;display:flex;align-items:end;position:relative;color:#fff;background:#100b0c;overflow:hidden}.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72)}.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,6,6,.94),rgba(25,8,10,.55),rgba(9,6,6,.2)),linear-gradient(0deg,rgba(8,6,6,.78),transparent 55%)}.page-hero .container{position:relative;z-index:2;padding-bottom:70px;padding-top:100px}.page-hero h1{font-family:var(--font-display);font-size:clamp(3.8rem,7vw,7rem);line-height:.95;font-weight:500;margin:14px 0 18px;max-width:950px}.page-hero p{max-width:700px;color:#d6cec5;font-size:1.1rem}
.breadcrumb{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#cbbf9e}.breadcrumb a{color:var(--gold-2)}
.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.content-grid img{width:100%;height:560px;object-fit:cover;box-shadow:var(--shadow)}
.rich-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.rich-list article{padding:24px;border:1px solid #d9cbb7;background:#fff}.rich-list h3{font-family:var(--font-display);font-size:1.35rem;margin:0 0 7px}.rich-list p{margin:0;color:#6d655d;font-size:.92rem}
.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:110px;gap:14px}.gallery-item{position:relative;overflow:hidden;background:#170f10}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.55s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item:nth-child(1){grid-column:span 7;grid-row:span 4}.gallery-item:nth-child(2){grid-column:span 5;grid-row:span 2}.gallery-item:nth-child(3){grid-column:span 5;grid-row:span 2}.gallery-item:nth-child(4){grid-column:span 4;grid-row:span 3}.gallery-item:nth-child(5){grid-column:span 4;grid-row:span 3}.gallery-item:nth-child(6){grid-column:span 4;grid-row:span 3}.gallery-item:nth-child(7){grid-column:span 6;grid-row:span 3}.gallery-item:nth-child(8){grid-column:span 6;grid-row:span 3}.gallery-item::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.13);pointer-events:none}
.policy{max-width:900px;margin:auto}.policy h2{font-family:var(--font-display);font-size:2rem;margin-top:42px}.policy h3{font-family:var(--font-display);font-size:1.35rem;margin-top:28px}.policy p,.policy li{color:#5f5750}.policy a{color:#7e5a1e;text-decoration:underline}
/* reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,.8,.22,1)}.reveal.in{opacity:1;transform:none}.reveal-left{opacity:0;transform:translateX(-24px);transition:.75s}.reveal-left.in{opacity:1;transform:none}.reveal-right{opacity:0;transform:translateX(24px);transition:.75s}.reveal-right.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal,.reveal-left,.reveal-right{opacity:1;transform:none}}
@media (max-width:1100px){
  .desktop-nav{gap:16px;font-size:.88rem}.header-actions .btn-outline{display:none}.hero .container{grid-template-columns:1fr .75fr;gap:30px}.hero-visual{min-height:540px}.footer-top{grid-template-columns:1.3fr 1fr 1fr}.footer-top>div:last-child{grid-column:1/-1}.process{grid-template-columns:repeat(3,1fr)}.process-step:nth-child(3){border-right:0}.process-step:nth-child(n+4){margin-top:28px}.content-grid{gap:45px}.dual-panel{padding:45px}
}
@media (max-width:900px){
  :root{--header:72px}.topbar{display:none}.desktop-nav,.header-actions{display:none}.menu-toggle{display:flex}.brand{min-width:0}.brand img{width:90px;height:54px}.site-header{background:#120e0f;backdrop-filter:none}.nav{min-height:var(--header)}
  .hero{min-height:auto}.hero .container{grid-template-columns:1fr;padding-top:80px;padding-bottom:90px}.hero-bg::after{background:linear-gradient(0deg,rgba(8,6,6,.93),rgba(20,8,10,.7) 48%,rgba(8,7,7,.36))}.hero-copy{max-width:790px}.hero-visual{min-height:540px;max-width:680px}.hero-scroll{display:none}.hero-frame.big{width:74%;height:72%}.hero-frame.small{width:52%;height:46%}
  .section{padding:85px 0}.intro-grid,.planner-grid,.content-grid{grid-template-columns:1fr;gap:45px}.intro-sticky{position:relative;top:0}.intro-number{font-size:7rem}.dual-wrap{grid-template-columns:1fr}.dual-panel{min-height:600px}.service-band{grid-template-columns:165px 1fr auto}.service-band img{width:165px;height:112px}.showcase-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 250px}.showcase-card:first-child{grid-column:1/-1;grid-row:auto}.process{grid-template-columns:1fr 1fr}.process-step:nth-child(2n){border-right:0}.process-step:nth-child(3){border-right:1px solid rgba(255,255,255,.12)}.process-step:nth-child(n+3){margin-top:25px}.planner-visual{min-height:600px}.why-grid{grid-template-columns:1fr 1fr}.contact-shell{grid-template-columns:1fr}.cta-content{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.rich-list{grid-template-columns:1fr 1fr}.gallery-grid{grid-auto-rows:90px}.gallery-item:nth-child(n){grid-column:span 6}.gallery-item:nth-child(1){grid-column:1/-1;grid-row:span 4}.gallery-item:nth-child(2),.gallery-item:nth-child(3){grid-row:span 3}.gallery-item:nth-child(n+4){grid-row:span 3}
}
@media (max-width:640px){
  .container{width:min(100% - 28px,1220px)}.section{padding:70px 0}.display{font-size:clamp(3rem,15vw,4.8rem)}.heading{font-size:clamp(2.5rem,12vw,4rem)}.lead{font-size:1rem}.eyebrow{font-size:.68rem;letter-spacing:.14em}.eyebrow::before{width:28px}
  .brand img{width:82px;height:50px}.menu-toggle{width:44px;height:44px}.hero .container{padding-top:60px;padding-bottom:70px}.hero .display{font-size:clamp(3.45rem,16vw,5.2rem);line-height:.93}.hero-copy p{font-size:1rem}.hero-badges{gap:7px}.hero-badges span{padding:8px 10px;font-size:.74rem}.hero-visual{min-height:430px;margin-top:5px}.hero-frame.big{right:0;top:15px;width:78%;height:67%}.hero-frame.small{left:0;bottom:16px;width:58%;height:42%}.hero-caption{width:74%;right:0;padding:13px 15px}.hero-caption strong{font-size:1.15rem}.hero-caption span{font-size:.73rem}.btn{min-height:48px;padding:0 18px;font-size:.86rem}.btns{gap:9px}
  .trust-grid{grid-template-columns:1fr 1fr}.trust-item{padding:17px 14px}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid #d9c8a9}.trust-item strong{font-size:1.15rem}.trust-item span{font-size:.76rem}
  .intro-number{font-size:5.5rem}.signature-line{display:grid}.dual-panel{min-height:510px;padding:28px 22px}.dual-index{font-size:3.7rem}.dual-content h3{font-size:2.6rem}.service-band{grid-template-columns:1fr;padding:10px}.service-band img{width:100%;height:190px}.service-band .arrow{position:absolute;right:20px;bottom:20px}.service-band{position:relative}.service-band>div{padding:4px 6px 54px}.showcase-grid{grid-template-columns:1fr;grid-template-rows:none}.showcase-card:first-child,.showcase-card{grid-column:auto;grid-row:auto;height:310px}.showcase-card:nth-child(n+2){height:230px}
  .process{grid-template-columns:1fr}.process-step,.process-step:nth-child(3){border-right:0;border-bottom:1px solid rgba(255,255,255,.1);margin-top:0!important;padding:28px 18px}.process-step::before{left:18px}.process-step .num{font-size:2.5rem}
  .planner-visual{min-height:460px}.planner-visual .img-a{width:83%;height:69%}.planner-visual .img-b{width:59%;height:42%;border-width:6px}.planner-note{left:12px;bottom:10px;max-width:250px;padding:13px 15px}.quote-section{min-height:560px}.quote-mark{font-size:6rem}.quote-copy h2{font-size:clamp(2.6rem,12vw,4.2rem)}.why-grid{grid-template-columns:1fr}.why-card{padding:28px;min-height:auto}.cta-panel{padding:40px 24px}.cta-content h2{font-size:clamp(2.7rem,12vw,4rem)}
  .contact-info,.contact-form{padding:34px 24px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.map-frame{height:340px}.footer-top{grid-template-columns:1fr;padding-top:55px}.footer-brand{grid-column:auto}.footer-bottom .container{display:grid}.float-stack{right:max(12px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}.float-btn{width:50px;height:50px}.float-btn svg{width:24px;height:24px}.backtop{left:12px;bottom:14px;width:42px;height:42px}
  .page-hero{min-height:500px}.page-hero .container{padding-bottom:50px}.page-hero h1{font-size:clamp(3.3rem,15vw,5rem)}.page-hero p{font-size:1rem}.content-grid img{height:390px}.rich-list{grid-template-columns:1fr}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:170px;gap:10px}.gallery-item:nth-child(n){grid-column:auto;grid-row:auto;height:auto}.gallery-item:nth-child(1){grid-column:1/-1;grid-row:span 2}.gallery-item:nth-child(4),.gallery-item:nth-child(7){grid-column:1/-1}
}
@media (max-width:360px){
  .container{width:calc(100% - 22px)}.hero .display{font-size:3.05rem}.hero-visual{min-height:390px}.hero-frame.big{width:82%}.hero-frame.small{width:60%}.hero-caption{width:80%}.trust-item{padding:14px 10px}.trust-item strong{font-size:1.05rem}.dual-panel{min-height:470px}.contact-info,.contact-form{padding:30px 18px}.gallery-grid{grid-auto-rows:150px}.float-btn{width:48px;height:48px}
}


/* Client project images + UGC section */

.media-contain{object-fit:contain !important;background:#151011}
.section-split{display:grid;grid-template-columns:1fr .82fr;gap:42px;align-items:end;margin-bottom:38px}
.project-snapshot{background:linear-gradient(180deg,#f8f3ea 0%,#f3ebdd 100%)}
.project-mosaic{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px;grid-auto-rows:255px}
.project-card{position:relative;overflow:hidden;background:#120e0f;border:1px solid rgba(201,166,74,.18);box-shadow:var(--shadow)}
.project-card::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.project-card img{width:100%;height:100%}
.project-card figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 18px 16px;background:linear-gradient(180deg,transparent,rgba(6,4,4,.84));color:#fff}
.project-card figcaption span{display:block;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:#e6d099;margin-bottom:5px}
.project-card figcaption strong{display:block;font-family:var(--font-display);font-size:1.28rem;line-height:1.12}
.project-card-large{grid-row:span 2}
.ugc-section{background:radial-gradient(circle at top right,rgba(201,166,74,.08),transparent 28%),linear-gradient(145deg,#0a0909,#1b0b0d 58%,#10090a)}
.ugc-head{align-items:center}
.ugc-banner{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:26px 28px;margin:0 0 28px;background:linear-gradient(135deg,rgba(255,255,255,.04),rgba(201,166,74,.08));border:1px solid rgba(201,166,74,.2)}
.ugc-banner .subheading{margin:10px 0 8px;color:#fff}
.ugc-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,320px);gap:18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding-bottom:8px}
.ugc-carousel::-webkit-scrollbar{height:10px}.ugc-carousel::-webkit-scrollbar-thumb{background:rgba(201,166,74,.38)}.ugc-carousel::-webkit-scrollbar-track{background:rgba(255,255,255,.08)}
.ugc-card{scroll-snap-align:start;background:rgba(255,255,255,.05);border:1px solid rgba(201,166,74,.16);overflow:hidden;display:flex;flex-direction:column;backdrop-filter:blur(4px)}
.ugc-media{position:relative;background:#080606;overflow:hidden}
.ugc-media.portrait{aspect-ratio:9/15}.ugc-media.landscape{aspect-ratio:16/9}
.ugc-media video{width:100%;height:100%;object-fit:cover;display:block}
.ugc-badge{position:absolute;left:12px;top:12px;z-index:2;padding:7px 10px;background:rgba(8,6,6,.76);border:1px solid rgba(201,166,74,.36);color:#f3dc8e;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.ugc-copy{padding:16px 16px 18px}.ugc-tag{display:inline-block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#f3dc8e;margin-bottom:8px}.ugc-copy h3{font-family:var(--font-display);font-size:1.25rem;line-height:1.15;margin:0 0 8px;color:#fff}.ugc-copy p{margin:0;color:#c7bdb2;font-size:.92rem}
.gallery-grid-client .gallery-item img{background:#140f10;object-fit:contain}
.gallery-ugc{grid-auto-columns:minmax(250px,300px)}
@media (max-width: 1024px){.section-split{grid-template-columns:1fr;gap:18px}.project-mosaic{grid-template-columns:1fr 1fr}.project-card-large{grid-column:1/-1}.ugc-banner{display:grid;grid-template-columns:1fr;align-items:start}}
@media (max-width: 767px){.project-mosaic{grid-template-columns:1fr;grid-auto-rows:auto}.project-card,.project-card-large{min-height:260px}.ugc-carousel{grid-auto-columns:minmax(78vw,82vw)}.ugc-copy h3{font-size:1.15rem}}
@media (max-width: 479px){.project-card,.project-card-large{min-height:230px}.ugc-banner{padding:20px 18px}.ugc-carousel{grid-auto-columns:minmax(82vw,86vw)}}
