
    :root { --ink:#0b0c0f; --ink-soft:#17191f; --paper:#f5f2ec; --white:#fff; --muted:#6f706f; --gold:#d7a94e; --gold-light:#f2d590; --line:rgba(11,12,15,.14); --radius:28px; --shadow:0 22px 70px rgba(10,10,12,.14); --max:1240px; }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
    body,button,a { -webkit-tap-highlight-color:transparent; }
    img { max-width:100%; }
    a { color:inherit; text-decoration:none; }
    button { font:inherit; }
    section { scroll-margin-top:96px; }
    .wrap { width:min(calc(100% - 40px),var(--max)); margin-inline:auto; }
    .site-header { position:fixed; inset:0 0 auto; z-index:50; color:var(--white); background:linear-gradient(180deg,rgba(5,6,8,.88),rgba(5,6,8,.48) 70%,transparent); transition:background .25s ease,box-shadow .25s ease; }
    .site-header.is-scrolled { background:rgba(8,9,12,.94); box-shadow:0 12px 38px rgba(0,0,0,.22); backdrop-filter:blur(16px); }
    .nav { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:26px; }
    .brand { display:inline-flex; align-items:center; gap:12px; min-width:max-content; }
    .brand-mark { width:34px; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 32% 28%,#fff8d6 0 7%,var(--gold-light) 18%,#b47718 64%,#65400d 100%); box-shadow:inset -8px -8px 14px rgba(30,18,0,.35),0 0 0 1px rgba(255,255,255,.2); }
    .brand-copy { line-height:1; }
    .brand-copy strong { display:block; font-size:.86rem; letter-spacing:.14em; }
    .brand-copy span { display:block; margin-top:6px; color:rgba(255,255,255,.62); font-size:.62rem; letter-spacing:.22em; }
    .nav-links { display:flex; align-items:center; gap:28px; font-size:.82rem; font-weight:650; }
    .nav-links a:not(.nav-contact) { color:rgba(255,255,255,.78); transition:color .2s ease; }
    .nav-links a:not(.nav-contact):hover { color:var(--white); }
    .nav-contact { padding:12px 18px; border:1px solid rgba(255,255,255,.28); border-radius:999px; background:rgba(255,255,255,.1); backdrop-filter:blur(10px); }
    .hero { position:relative; min-height:760px; height:min(92vh,920px); overflow:hidden; color:var(--white); background:#08090b; }
    .slides,.slide,.slide::after { position:absolute; inset:0; }
    .slide { margin:0; opacity:0; visibility:hidden; transition:opacity .9s ease,visibility .9s ease; }
    .slide.is-active { opacity:1; visibility:visible; }
    .slide img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1); transition:transform 7s ease; image-rendering:auto; }
    .slide.is-active img { transform:scale(1.025); }
    .slide::after { content:""; background:linear-gradient(90deg,rgba(4,5,7,.88) 0%,rgba(4,5,7,.58) 43%,rgba(4,5,7,.1) 76%),linear-gradient(0deg,rgba(4,5,7,.76) 0%,transparent 46%); }
    .hero-inner { position:relative; z-index:2; height:100%; display:flex; align-items:center; padding-top:100px; padding-bottom:90px; }
    .hero-copy { width:min(760px,100%); }
    .eyebrow { display:inline-flex; align-items:center; gap:10px; margin:0 0 22px; color:var(--gold-light); font-size:.72rem; font-weight:800; letter-spacing:.21em; text-transform:uppercase; }
    .eyebrow::before { content:""; width:36px; height:1px; background:currentColor; }
    h1,h2,h3,p { margin-top:0; }
    h1 { max-width:750px; margin-bottom:24px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(3.4rem,7.5vw,7.2rem); font-weight:500; line-height:.92; letter-spacing:-.055em; }
    h1 em { color:var(--gold-light); font-weight:400; }
    .hero-lead { max-width:640px; margin-bottom:32px; color:rgba(255,255,255,.78); font-size:clamp(1rem,1.8vw,1.23rem); line-height:1.7; }
    .actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
    .btn { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 22px; border:1px solid transparent; border-radius:999px; font-size:.86rem; font-weight:800; transition:transform .2s ease,background .2s ease,border-color .2s ease; }
    .btn:hover { transform:translateY(-2px); }
    .btn-gold { color:#171006; background:var(--gold-light); }
    .btn-gold:hover { background:#ffe2a1; }
    .btn-ghost { color:var(--white); border-color:rgba(255,255,255,.3); background:rgba(255,255,255,.08); }
    .arrow { font-size:1.2em; line-height:1; }
    .hero-meta { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:36px; color:rgba(255,255,255,.54); font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
    .hero-meta span::before { content:"●"; margin-right:9px; color:var(--gold); font-size:.55rem; vertical-align:2px; }
    .slider-controls { position:absolute; z-index:3; right:max(20px,calc((100vw - var(--max))/2)); bottom:40px; display:flex; align-items:center; gap:10px; }
    .slider-arrow,.slider-dot { border:0; cursor:pointer; color:var(--white); background:transparent; }
    .slider-arrow { width:44px; height:44px; border:1px solid rgba(255,255,255,.26); border-radius:50%; background:rgba(8,9,12,.25); }
    .slider-dots { display:flex; gap:6px; margin-inline:4px; }
    .slider-dot { width:18px; height:3px; padding:0; border-radius:99px; background:rgba(255,255,255,.3); }
    .slider-dot.is-active { background:var(--gold-light); }
    .temporary-note { position:absolute; z-index:3; left:max(20px,calc((100vw - var(--max))/2)); bottom:42px; max-width:560px; color:rgba(255,255,255,.56); font-size:.75rem; line-height:1.55; }
    .section { padding:118px 0; }
    .section-white { background:var(--white); }
    .section-dark { color:var(--white); background:var(--ink); }
    .section-head { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); gap:72px; align-items:end; margin-bottom:58px; }
    .section-kicker { margin-bottom:16px; color:#9d6e1d; font-size:.7rem; font-weight:850; letter-spacing:.2em; text-transform:uppercase; }
    .section-dark .section-kicker { color:var(--gold-light); }
    h2 { margin-bottom:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.6rem,5.1vw,5rem); font-weight:500; line-height:1; letter-spacing:-.045em; }
    .section-intro { margin-bottom:0; color:var(--muted); font-size:1.02rem; line-height:1.75; }
    .section-dark .section-intro { color:rgba(255,255,255,.62); }
    .spec-block { display:grid; grid-template-columns:1.2fr .8fr; gap:20px; margin-bottom:42px; }
    .spec-panel { padding:30px; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.58); }
    .spec-panel h3 { margin-bottom:18px; font-size:.76rem; letter-spacing:.16em; text-transform:uppercase; }
    .size-list,.color-list { display:flex; flex-wrap:wrap; gap:9px; }
    .size-chip { padding:9px 13px; border-radius:999px; color:#343438; background:#ebe7df; font-size:.78rem; font-weight:750; }
    .color-chip { display:inline-flex; align-items:center; gap:8px; padding:8px 12px 8px 8px; border:1px solid var(--line); border-radius:999px; font-size:.76rem; font-weight:700; background:rgba(255,255,255,.72); }
    .swatch { width:18px; height:18px; border:1px solid rgba(0,0,0,.14); border-radius:50%; }
    .swatch-white { background:#fff; } .swatch-blue { background:#215acb; } .swatch-red { background:#cb2337; } .swatch-silver { background:linear-gradient(135deg,#f6f6f6,#85898d,#e8e8e8); } .swatch-gold { background:linear-gradient(135deg,#ffe9a8,#b57918,#f0cd6d); } .swatch-orange { background:#f17a1d; } .swatch-purple { background:#7c38a8; } .swatch-green { background:#238553; }
    .masonry { columns:3 300px; column-gap:18px; }
    .gallery-card { display:block; width:100%; margin:0 0 18px; break-inside:avoid; overflow:hidden; border-radius:20px; background:#e5e1da; box-shadow:0 10px 32px rgba(11,12,15,.07); }
    .gallery-card img { display:block; width:100%; height:auto; transition:transform .5s ease; }
    .gallery-card:hover img { transform:scale(1.018); }
    .gallery-note { margin:20px 0 0; color:var(--muted); font-size:.78rem; }
    .noel-intro { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:44px; }
    .motif { min-height:150px; display:flex; flex-direction:column; justify-content:space-between; padding:24px; border:1px solid rgba(255,255,255,.12); border-radius:22px; background:var(--ink-soft); }
    .motif span { color:rgba(255,255,255,.5); font-size:.68rem; font-weight:750; letter-spacing:.16em; text-transform:uppercase; }
    .motif strong { font-family:Georgia,"Times New Roman",serif; font-size:1.9rem; font-weight:500; }
    .motif-red { box-shadow:inset 0 -5px 0 #bd2336; } .motif-gold { box-shadow:inset 0 -5px 0 #d1a13e; } .motif-silver { box-shadow:inset 0 -5px 0 #acb0b3; }
    .section-dark .gallery-card { background:#202228; box-shadow:none; }
    .fatpop { position:relative; overflow:hidden; background:#e6d9c3; }
    .fatpop::before { content:"FATPOP"; position:absolute; right:-4vw; top:28px; color:rgba(11,12,15,.04); font-family:Georgia,"Times New Roman",serif; font-size:min(22vw,300px); line-height:1; pointer-events:none; }
    .fatpop .wrap { position:relative; }
    .fatpop-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
    .fatpop-card { position:relative; min-height:520px; display:flex; overflow:hidden; border-radius:var(--radius); color:var(--white); background:var(--ink); box-shadow:var(--shadow); }
    .fatpop-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(5,6,8,.9) 0%,rgba(5,6,8,.25) 58%,rgba(5,6,8,.14) 100%); }
    .fatpop-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
    .fatpop-card:hover .fatpop-photo { transform:scale(1.025); }
    .fatpop-content { position:relative; z-index:2; width:100%; display:flex; flex-direction:column; justify-content:space-between; padding:clamp(28px,4vw,48px); }
    .fatpop-label { display:inline-flex; width:max-content; max-width:100%; padding:9px 12px; border:1px solid rgba(255,255,255,.25); border-radius:999px; font-size:.68rem; font-weight:850; letter-spacing:.16em; text-transform:uppercase; background:rgba(5,6,8,.28); backdrop-filter:blur(10px); }
    .fatpop-number { margin:22px 0 10px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(5.2rem,11vw,9rem); font-weight:500; line-height:.8; letter-spacing:-.08em; }
    .fatpop-unit { color:var(--gold-light); font-size:1rem; font-weight:800; letter-spacing:.08em; }
    .fatpop-card p { max-width:420px; margin-bottom:0; color:rgba(255,255,255,.78); line-height:1.65; }
    .fatpop-foot { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-top:40px; }
    .fatpop-arrow { font-size:2rem; }
    .fatpop-gallery-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin:70px 0 28px; }
    .fatpop-gallery-head h3 { margin-bottom:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2rem,4vw,3.4rem); font-weight:500; letter-spacing:-.04em; }
    .fatpop-gallery-head p { max-width:470px; margin-bottom:0; color:var(--muted); line-height:1.65; }
    .fatpop .gallery-card { background:#d5c6ae; }
    .contact-section { padding:88px 0; color:var(--white); background:#101115; }
    .contact-box { display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:center; padding:clamp(34px,6vw,72px); border:1px solid rgba(255,255,255,.11); border-radius:34px; background:linear-gradient(135deg,#1b1d24,#0c0d10); }
    .contact-box h2 { margin-bottom:18px; font-size:clamp(2.5rem,5vw,4.8rem); }
    .contact-box p { margin-bottom:0; color:rgba(255,255,255,.58); line-height:1.7; }
    .contact-links { display:grid; gap:12px; }
    .contact-link { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:19px 22px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(255,255,255,.04); font-size:.92rem; font-weight:750; transition:background .2s ease,border-color .2s ease; }
    .contact-link:hover { border-color:rgba(242,213,144,.42); background:rgba(255,255,255,.08); }
    .contact-link small { display:block; margin-bottom:5px; color:rgba(255,255,255,.42); font-size:.62rem; letter-spacing:.14em; text-transform:uppercase; }
    footer { padding:30px 0; color:rgba(255,255,255,.48); background:#08090b; font-size:.72rem; }
    .footer-inner { display:flex; justify-content:space-between; gap:20px; }
    .mobile-bar { display:none; }
    @media (max-width:900px) { .nav-links a:not(.nav-contact){display:none} .section-head,.spec-block,.contact-box{grid-template-columns:1fr;gap:30px} .section-head{align-items:start} .fatpop-grid{grid-template-columns:1fr} .fatpop-gallery-head{align-items:start;flex-direction:column} .contact-box{padding:42px 30px} .temporary-note{max-width:46vw} }
    @media (max-width:640px) {
      .wrap{width:min(calc(100% - 26px),var(--max))} .nav{min-height:72px} .brand-copy strong{font-size:.68rem;letter-spacing:.11em} .brand-copy span{font-size:.52rem;letter-spacing:.14em} .brand-mark{width:30px} .nav-contact{padding:10px 13px;font-size:.72rem}
      .hero{min-height:720px;height:100svh} .hero-inner{align-items:flex-end;padding-top:100px;padding-bottom:145px} h1{font-size:clamp(3.4rem,16vw,5.4rem)} .hero-lead{font-size:.98rem;line-height:1.58} .hero-meta{display:none} .slider-controls{right:14px;bottom:88px} .slider-dots{gap:4px} .slider-dot{width:8px} .temporary-note{left:14px;bottom:91px;max-width:46%;font-size:.63rem} .slide::after{background:linear-gradient(0deg,rgba(4,5,7,.96) 0%,rgba(4,5,7,.54) 72%,rgba(4,5,7,.28) 100%)}
      .section{padding:82px 0} .section-head{margin-bottom:40px} .section-intro{font-size:.94rem} .spec-panel{padding:22px} .masonry{columns:2 140px;column-gap:10px} .gallery-card{margin-bottom:10px;border-radius:13px} .noel-intro{grid-template-columns:1fr} .motif{min-height:112px} .fatpop-card{min-height:370px}
      .contact-section{padding:68px 0 82px} .contact-box{border-radius:24px} .footer-inner{flex-direction:column} .mobile-bar{position:fixed;z-index:60;right:12px;bottom:12px;left:12px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:16px;color:var(--white);background:rgba(8,9,11,.94);box-shadow:0 12px 38px rgba(0,0,0,.35);backdrop-filter:blur(14px)} .mobile-bar a{padding:14px 10px;text-align:center;font-size:.73rem;font-weight:800} .mobile-bar a+a{color:#211707;background:var(--gold-light)} footer{padding-bottom:84px}
    }
    @media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto} *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important} }

    .christmas-catalog { margin:48px 0 58px; scroll-margin-top:100px; }
    .christmas-catalog>h3 { margin:0 0 16px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.9rem,3.5vw,3rem); font-weight:500; }
    .catalog-intro { max-width:860px; margin-bottom:32px; color:rgba(255,255,255,.76); line-height:1.7; }
    .catalog-family { margin:30px 0 36px; }
    .catalog-family h4 { margin:0 0 16px; font-size:1.05rem; color:var(--gold-light); font-weight:650; }
    .christmas-catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
    .christmas-catalog-grid figure { margin:0; padding:10px 10px 16px; border:1px solid rgba(255,255,255,.15); border-radius:18px; background:#000; }
    .christmas-catalog-grid img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; border-radius:10px; }
    .christmas-catalog-grid figcaption { margin-top:10px; text-align:center; font-size:.94rem; font-weight:600; }
    @media(max-width:700px) { .christmas-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .christmas-catalog-grid figure { padding:5px 5px 12px; border-radius:12px; } .christmas-catalog-grid figcaption { font-size:.83rem; } }
      .gallery-card--panorama img { aspect-ratio:1870/584; object-fit:cover; }
  