:root{
    --bg:#10100f;
    --bg-soft:#181714;
    --paper:#f2ede6;
    --paper-2:#ddd5cb;
    --ink:#191815;
    --muted:#a8a199;
    --copper:#c29884;
    --copper-2:#a97761;
    --line:rgba(255,255,255,.12);
    --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--paper);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:82px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,rgba(12,12,11,.88),rgba(12,12,11,.2));backdrop-filter:blur(10px);transition:.25s}
.site-header.scrolled{background:rgba(12,12,11,.94);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-family:Georgia,serif;letter-spacing:.08em}
.brand img{width:54px;height:54px;object-fit:contain}
.brand span{display:none}
.main-nav{display:flex;align-items:center;gap:26px;font-size:.88rem;text-transform:uppercase;letter-spacing:.12em}
.main-nav a{opacity:.82;transition:.2s}
.main-nav a:hover{opacity:1;color:#fff}
.nav-cta{border:1px solid var(--copper);padding:10px 16px;border-radius:999px;color:#fff!important}
.menu-toggle{display:none;background:none;border:1px solid var(--line);color:#fff;padding:9px 12px;border-radius:999px}
.hero{min-height:100vh;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;transform:scale(1.02);transition:opacity 1.2s ease}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,9,8,.72),rgba(9,9,8,.18) 55%,rgba(9,9,8,.35)),linear-gradient(to top,rgba(9,9,8,.82),transparent 55%)}
.hero-content{position:relative;z-index:2;width:min(var(--max),calc(100% - 48px));margin:0 auto 9vh}
.eyebrow{color:var(--copper);text-transform:uppercase;letter-spacing:.22em;font-size:.75rem}
.hero h1,.display-title{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.96;letter-spacing:-.03em}
.hero h1{font-size:clamp(3.8rem,9vw,9rem);max-width:950px;margin:12px 0 22px}
.hero p{max-width:620px;font-size:clamp(1rem,1.7vw,1.25rem);color:#e7e1da}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;border:1px solid var(--copper);background:var(--copper);color:#161311;cursor:pointer;transition:.2s}
.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.section{padding:110px 24px}
.section-inner{width:min(var(--max),100%);margin:auto}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}
.section-head h2{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,5rem);font-weight:400;line-height:1;margin:0}
.section-head p{max-width:520px;color:var(--muted);margin:0}
.grid{display:grid;gap:20px}
.gallery-cards{grid-template-columns:repeat(3,1fr)}
.gallery-card{position:relative;min-height:560px;overflow:hidden;border-radius:2px;background:#222}
.gallery-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:.6s}
.gallery-card:hover img{transform:scale(1.025)}
.gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,0) 55%)}
.gallery-card .card-content{position:absolute;z-index:2;left:26px;right:26px;bottom:24px}
.gallery-card h3{font-family:Georgia,serif;font-size:2.1rem;font-weight:400;margin:0}
.gallery-card span{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:#dfc3b5}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
.split .photo-frame{aspect-ratio:4/5;overflow:hidden}
.split .photo-frame img{width:100%;height:100%;object-fit:cover}
.split h2{font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,5.2rem);font-weight:400;line-height:1.02;margin:12px 0 24px}
.split p{color:var(--paper-2);font-size:1.05rem}
.cta-panel{padding:70px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(194,152,132,.13),rgba(255,255,255,.02));display:flex;align-items:center;justify-content:space-between;gap:40px}
.cta-panel h2{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,5rem);font-weight:400;line-height:1;margin:0}
.page-hero{padding:170px 24px 70px;border-bottom:1px solid var(--line)}
.page-hero .inner{width:min(var(--max),100%);margin:auto}
.page-hero h1{font-family:Georgia,serif;font-size:clamp(3.5rem,8vw,8rem);font-weight:400;line-height:.95;margin:12px 0 18px}
.page-hero p{max-width:650px;color:var(--muted);font-size:1.12rem}
.masonry{columns:3 320px;column-gap:16px}
.photo-tile{break-inside:avoid;margin:0 0 16px;cursor:zoom-in;position:relative;overflow:hidden;background:#1e1d1a}
.photo-tile img{width:100%;height:auto;transition:.4s}
.photo-tile:hover img{transform:scale(1.012);filter:brightness(.92)}
.lightbox{position:fixed;z-index:999;inset:0;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:24px}
.lightbox.open{display:flex}
.lightbox img{max-height:92vh;max-width:94vw;object-fit:contain}
.lightbox button{position:absolute;right:22px;top:20px;border:0;background:transparent;color:#fff;font-size:2rem;cursor:pointer}
.cards{grid-template-columns:repeat(3,1fr)}
.price-card,.option-card{border:1px solid var(--line);padding:34px;background:var(--bg-soft)}
.price-card .category{color:var(--copper);font-size:.75rem;text-transform:uppercase;letter-spacing:.18em}
.price-card h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:8px 0}
.price{font-size:2rem;margin:26px 0 0}
.muted{color:var(--muted)}
.empty-state{border:1px dashed var(--line);padding:45px;text-align:center;color:var(--muted)}
.form-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:42px;align-items:start}
.form-card{border:1px solid var(--line);padding:34px;background:var(--bg-soft)}
.field{margin-bottom:20px}
.field label{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:8px}
.field input,.field textarea,.field select{width:100%;background:#0d0d0c;color:#fff;border:1px solid rgba(255,255,255,.18);padding:14px 15px;border-radius:0;outline:none}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--copper)}
.pack-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.choice{border:1px solid var(--line);padding:18px;cursor:pointer;display:block;background:#131310}
.choice:has(input:checked){border-color:var(--copper);background:rgba(194,152,132,.09)}
.choice input{margin-right:8px}
.option-row{display:grid;grid-template-columns:auto 1fr 92px;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:14px 0}
.option-row input[type=number]{width:80px;background:#0d0d0c;color:#fff;border:1px solid var(--line);padding:8px}
.summary{position:sticky;top:110px}
.summary-total{font-family:Georgia,serif;font-size:3rem;margin:12px 0}
.line-item{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:10px 0;color:var(--paper-2)}
.notice{padding:14px 16px;border:1px solid rgba(194,152,132,.5);background:rgba(194,152,132,.08);margin-bottom:24px}
.success{border-color:rgba(120,190,125,.45);background:rgba(120,190,125,.08)}
.site-footer{border-top:1px solid var(--line);padding:60px max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;color:var(--muted)}
.footer-logo{width:68px;margin-bottom:10px}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end;font-size:.85rem}
.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;font-size:.78rem}
.legal{max-width:850px}
.legal h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin-top:38px}
@media(max-width:900px){
    .menu-toggle{display:block}
    .main-nav{position:absolute;top:82px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;background:#0d0d0c;padding:22px 24px;border-top:1px solid var(--line)}
    .main-nav.open{display:flex}
    .gallery-cards,.cards{grid-template-columns:1fr}
    .gallery-card{min-height:70vh}
    .split{grid-template-columns:1fr;gap:34px}
    .form-shell{grid-template-columns:1fr}
    .summary{position:static}
    .cta-panel{padding:42px 28px;align-items:flex-start;flex-direction:column}
    .site-footer{grid-template-columns:1fr}
    .footer-links{justify-content:flex-start}
}
@media(max-width:600px){
    .site-header{height:72px}
    .brand img{width:46px;height:46px}
    .hero-content{width:calc(100% - 32px);margin-bottom:7vh}
    .hero h1{font-size:3.8rem}
    .section{padding:78px 16px}
    .page-hero{padding:130px 16px 55px}
    .section-head{display:block}
    .section-head p{margin-top:18px}
    .form-card{padding:22px}
    .pack-grid{grid-template-columns:1fr}
}
