:root{
  --cream:#f7efe3;--paper:#fffaf3;--ink:#2d241c;--muted:#786b5d;--line:#e6d8c8;
  --gold:#ad7b2e;--gold2:#d5a94f;--shadow:0 22px 60px rgba(72,49,24,.12);--radius:24px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 10%,rgba(255,255,255,.8),transparent 32%),radial-gradient(circle at 85% 35%,rgba(217,178,124,.14),transparent 30%);z-index:-1}
a{text-decoration:none;color:inherit}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:24px;padding:15px 5vw;background:rgba(247,239,227,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(230,216,200,.8)}
.brand{display:flex;align-items:center;gap:10px;margin-right:auto}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-family:"Playfair Display";font-size:22px;color:var(--gold)}
.brand b{display:block;font-size:12px;letter-spacing:.13em}.brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:.16em;margin-top:2px}
.nav{display:flex;gap:20px;font-size:13px;color:#5e5145}.nav a{padding:7px 0}.nav a:hover{color:var(--gold)}
.nav-cta,.button.dark,.package-btn{background:var(--ink);color:#fff8ef;border-radius:999px;padding:12px 18px;font-weight:700;font-size:13px}
.section{padding:95px 5vw;scroll-margin-top:80px}.section-tight{padding-top:70px;padding-bottom:55px}
.hero{min-height:78vh;display:grid;grid-template-columns:1.02fr .98fr;gap:7vw;align-items:center;padding-top:70px}
.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:var(--gold);margin:0 0 14px}.hero h1{font:600 clamp(48px,6.2vw,86px)/.98 "Playfair Display",serif;letter-spacing:-.04em;margin:0 0 25px}.hero h1 em,.contact h2 em{font-weight:500;color:var(--gold)}
.lead{font-size:17px;line-height:1.7;color:var(--muted);max-width:640px}.hero-actions{display:flex;gap:12px;margin:28px 0}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 20px;font-weight:700;font-size:13px}.button.light{border:1px solid var(--line);background:rgba(255,250,243,.65)}
.mini-proof{display:flex;flex-wrap:wrap;gap:15px;color:#756758;font-size:11px}.hero-feature{display:flex;justify-content:flex-end}.feature-media{position:relative;max-width:560px;width:100%;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);background:#eee}.feature-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(25,19,12,.62));pointer-events:none}.feature-media img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.feature-badge{position:absolute;top:18px;left:18px;padding:8px 11px;border-radius:999px;background:rgba(255,250,243,.86);font-size:9px;font-weight:800;letter-spacing:.13em;z-index:2}.feature-caption{position:absolute;left:25px;right:25px;bottom:24px;color:white;z-index:2}.feature-caption span{font-size:10px;letter-spacing:.14em}.feature-caption strong{display:block;font:500 28px/1.1 "Playfair Display";margin-top:5px}
.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:24px}.section-head h2,.subhead h2{font:600 clamp(35px,4vw,55px)/1 "Playfair Display";margin:0;letter-spacing:-.035em}.section-head>p{max-width:390px;color:var(--muted);font-size:13px;line-height:1.6;margin:0}
.h-scroll{display:flex;gap:18px;overflow-x:auto;padding:4px 3px 18px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c8ad8a transparent}.h-scroll::-webkit-scrollbar{height:7px}.h-scroll::-webkit-scrollbar-thumb{background:#c8ad8a;border-radius:20px}
.work-card{flex:0 0 min(340px,78vw);scroll-snap-align:start}.media-button{position:relative;display:block;width:100%;border:0;padding:0;overflow:hidden;border-radius:24px;cursor:pointer;background:#ddd;box-shadow:0 15px 38px rgba(65,45,25,.1)}.media-button img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;transition:transform .4s}.media-button:hover img{transform:scale(1.03)}.play{position:absolute;left:18px;bottom:18px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,250,243,.92);color:var(--ink);font-size:14px;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.card-copy{padding:13px 4px}.card-copy b{display:block;font:600 20px "Playfair Display"}.card-copy span{color:var(--muted);font-size:12px}
.poster-card{flex:0 0 min(290px,70vw);margin:0;scroll-snap-align:start}.poster-card img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:22px;display:block;box-shadow:var(--shadow)}.poster-card figcaption{font-size:12px;font-weight:700;padding:11px 3px;color:#675a4e}
.package-section{background:rgba(255,250,243,.56);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.package-grid,.website-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.package,.website-card{background:rgba(255,255,255,.58);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 8px 30px rgba(75,51,25,.05)}.package h3,.website-card h3{font:600 28px "Playfair Display";margin:8px 0}.tag{display:inline-block;border:1px solid #ddc7a9;color:#8d632c;background:#fff6e8;border-radius:999px;padding:5px 9px;font-size:9px;letter-spacing:.12em;font-weight:800}.price{font:700 27px "DM Sans";margin:15px 0 18px}.price small{font-size:10px;color:var(--muted);font-weight:500}.package ul,.website-card ul{list-style:none;padding:0;margin:0 0 22px;color:#675b50;font-size:12px;line-height:1.75}.package li:before,.website-card li:before{content:"✓";color:var(--gold);font-weight:900;margin-right:7px}.package-btn{display:inline-block;width:100%;text-align:center;padding:11px}.featured-package{border-color:#c9a46a;box-shadow:0 18px 45px rgba(150,105,42,.12);transform:translateY(-7px)}.website-packages{margin-top:72px}.subhead{margin-bottom:22px}.website-grid{grid-template-columns:repeat(3,1fr)}.website-card{padding:28px}.website-card p{font-size:12px;line-height:1.6;color:var(--muted);min-height:58px}.website-featured{background:#2f261e;color:#fff7eb;border-color:#2f261e}.website-featured p,.website-featured ul{color:#d9cdbd}.website-featured .tag{background:#f6e8d1;color:#5b401e;border:0}
.services-section{padding-top:75px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-grid article{padding:24px;border-top:1px solid #cdbda9}.service-grid span{color:var(--gold);font-size:11px}.service-grid h3{font:600 25px "Playfair Display";margin:30px 0 9px}.service-grid p{font-size:12px;line-height:1.7;color:var(--muted)}
.contact{display:grid;grid-template-columns:1fr .75fr;gap:8vw;align-items:center;background:#eee0cf}.contact h2{font:600 clamp(42px,5vw,70px)/.98 "Playfair Display";margin:0 0 20px}.contact-card{background:#fff9f1;border:1px solid #dfcdb6;border-radius:24px;padding:8px;box-shadow:var(--shadow)}.contact-card a{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--line)}.contact-card a:last-child{border:0}.contact-card span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:800}.contact-card b{font-size:12px}
footer{display:flex;justify-content:space-between;gap:15px;padding:22px 5vw;background:#2d241c;color:#e7d9c8;font-size:11px}.modal{display:none;position:fixed;inset:0;z-index:50}.modal.open{display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:rgba(30,22,15,.75);backdrop-filter:blur(7px)}.modal-box{position:relative;width:min(430px,92vw);z-index:2}.modal-box video{width:100%;max-height:85vh;border-radius:22px;background:#111;display:block}.modal-close{position:absolute;right:-10px;top:-45px;width:38px;height:38px;border:0;border-radius:50%;background:#fff8ef;color:#2d241c;font-size:25px;cursor:pointer}
@media(max-width:1050px){.nav{gap:12px}.nav-cta{display:none}.package-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{padding:12px 4vw}.nav{display:none}.brand b{font-size:10px}.hero{grid-template-columns:1fr;padding-top:45px;gap:35px}.hero h1{font-size:52px}.hero-feature{justify-content:stretch}.section{padding:65px 4vw}.section-head{display:block}.section-head>p{margin-top:13px}.package-grid,.website-grid{grid-template-columns:1fr}.featured-package{transform:none}.contact{grid-template-columns:1fr;gap:35px}.service-grid{grid-template-columns:1fr 1fr}.contact-card{width:100%}.footer{flex-direction:column}}
@media(max-width:480px){.hero h1{font-size:45px}.service-grid{grid-template-columns:1fr}.work-card{flex-basis:82vw}.poster-card{flex-basis:72vw}.feature-caption strong{font-size:23px}}
