
:root{
  --red:#E51627;
  --red-deep:#B90F1C;
  --red-soft:#FFF0F2;
  --ink:#101114;
  --muted:#686D76;
  --line:#DDDDE0;
  --paper:#F8F7F4;
  --white:#FFFFFF;
  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:22px;
  --radius-xl:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;font-family:Inter,sans-serif;background:var(--paper);color:var(--ink)}
a{text-decoration:none;color:inherit}
::selection{background:var(--red);color:#fff}

/* top bar */
.topbar{background:var(--ink);color:#c6c8cd;font-size:11px;letter-spacing:.02em;padding:9px 0}
.topbar a{color:#fff;font-weight:700;transition:.2s}
.topbar a:hover{color:#ffb7bd}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(248,247,244,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,17,20,.08)}
.nav-row{height:84px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-logo{width:54px;height:54px;object-fit:contain;background:#fff;border-radius:var(--radius-sm);box-shadow:0 5px 16px rgba(16,17,20,.08);border:1px solid rgba(229,22,39,.14)}
.brand-text{display:none}
.brand-text b{display:block;font-size:14px;line-height:1;letter-spacing:.02em}
.brand-text small{display:block;margin-top:5px;font-size:8px;letter-spacing:.2em;color:#7d828b}
.desktop-nav{display:none;gap:30px;font-size:13px;font-weight:600}
.desktop-nav a{position:relative}
.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;border-radius:99px;background:var(--red);transition:.25s}
.desktop-nav a:hover:after{width:100%}
.nav-actions{display:flex;align-items:center;gap:14px}
.text-link{font-size:12px;font-weight:600}
.nav-cta{background:var(--red);color:#fff;padding:12px 18px;font-size:12px;font-weight:700;border-radius:var(--radius-sm);box-shadow:0 7px 18px rgba(229,22,39,.18);transition:.25s}
.nav-cta:hover{background:var(--red-deep);transform:translateY(-1px)}
.menu-btn{width:42px;height:42px;border:1px solid #d1d2d5;background:#fff;display:grid;place-content:center;gap:5px;border-radius:var(--radius-sm)}
.menu-btn span{width:17px;height:1.5px;background:var(--ink);display:block}
.mobile-nav{padding:7px 10px 14px;margin:0 0 12px;background:#fff;border:1px solid #e4e4e5;border-radius:var(--radius-md);box-shadow:0 12px 32px rgba(16,17,20,.06)}
.mobile-nav a{display:block;padding:12px 8px;font-size:14px;font-weight:600;border-bottom:1px solid #ececee}
.mobile-nav a:last-child{border-bottom:0}

/* hero */
.hero-section{padding-top:74px}
.hero-copy{padding:20px 0 50px}
.eyebrow{display:flex;align-items:center;gap:9px;text-transform:uppercase;font-size:10px;letter-spacing:.2em;font-weight:800;color:#5f646d}
.eyebrow>span{display:inline-block;width:22px;height:2px;border-radius:99px;background:var(--red)}
.eyebrow.light{color:#c3c5ca}
.eyebrow.light>span{background:#ff6672}
.hero-copy h1{font-size:clamp(3.3rem,7.7vw,7rem);font-weight:800;line-height:.9;letter-spacing:-.065em;margin:22px 0 0;max-width:850px}
.hero-copy h1 em{display:block;font-style:normal;color:var(--red)}
.hero-lead{font-size:16px;line-height:1.8;color:#616771;max-width:610px;margin-top:26px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.btn-solid,.btn-ghost,.btn-acid{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:15px 20px;font-size:13px;font-weight:700;transition:.25s;border-radius:var(--radius-sm)}
.btn-solid{background:var(--red);color:#fff;box-shadow:0 9px 22px rgba(229,22,39,.18)}
.btn-solid:hover{background:var(--red-deep);transform:translateY(-2px)}
.btn-ghost{border:1px solid #c9cbcf;background:rgba(255,255,255,.38)}
.btn-ghost:hover{background:#fff;border-color:#b9bbc0}
.btn-acid{background:#fff;color:var(--red);margin-top:28px}
.btn-acid:hover{background:var(--red-soft);transform:translateY(-2px)}
.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);max-width:620px;margin-top:52px;padding-top:22px;border-top:1px solid #d5d6d8}
.hero-metrics div{padding-right:14px}
.hero-metrics div+div{padding-left:18px;border-left:1px solid #d5d6d8}
.hero-metrics strong{display:block;font-size:27px;letter-spacing:-.04em}
.hero-metrics span{display:block;font-size:10px;color:#737984;margin-top:4px}

/* hero visual */
.hero-visual{position:relative;min-height:600px;background:radial-gradient(circle at 50% 39%,#34363b 0,#1d1f24 38%,#0d0e11 76%);overflow:hidden;border-radius:var(--radius-xl);box-shadow:0 28px 70px rgba(16,17,20,.16)}
.hero-visual:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.08);border-radius:inherit;pointer-events:none}
.visual-label{position:absolute;left:22px;top:22px;color:#afb1b7;font-size:9px;letter-spacing:.18em}
.fixture-cord{position:absolute;left:50%;top:0;width:1px;height:170px;background:#73757a}
.fixture-cap{position:absolute;top:164px;left:50%;transform:translateX(-50%);width:34px;height:15px;background:#08090a;border-radius:4px}
.fixture-body{position:absolute;top:175px;left:50%;transform:translateX(-50%);width:270px;height:145px;background:#08090a;clip-path:polygon(22% 0,78% 0,100% 100%,0 100%)}
.fixture-glow{position:absolute;left:15%;right:15%;bottom:-5px;height:17px;background:#ffd6d9;border-radius:50%;box-shadow:0 0 38px #ff9aa2}
.beam{position:absolute;left:50%;top:305px;transform:translateX(-50%);width:440px;height:295px;background:linear-gradient(to bottom,rgba(255,90,105,.15),transparent);clip-path:polygon(37% 0,63% 0,100% 100%,0 100%);filter:blur(5px)}
.hero-product-caption{position:absolute;left:22px;bottom:22px;color:#fff}
.hero-product-caption span{display:block;color:#a1a5ad;font-size:10px;text-transform:uppercase;letter-spacing:.15em}
.hero-product-caption b{display:block;margin-top:5px;font-size:20px}
.visual-arrow{position:absolute;right:22px;bottom:22px;width:48px;height:48px;border:1px solid rgba(255,255,255,.36);color:#fff;display:grid;place-items:center;font-size:19px;transition:.25s;border-radius:var(--radius-sm);backdrop-filter:blur(4px)}
.visual-arrow:hover{background:var(--red);color:#fff;border-color:var(--red)}
.ticker{margin-top:70px;overflow:hidden;border-top:1px solid #d6d6d8;border-bottom:1px solid #d6d6d8;background:#fff}
.ticker-track{display:flex;width:max-content;padding:13px 0;font-size:10px;font-weight:800;letter-spacing:.17em;color:var(--red);animation:ticker 25s linear infinite}
.ticker-track span{padding-right:20px}
@keyframes ticker{to{transform:translateX(-50%)}}

/* sections */
.section{padding:120px 0}
.section-sm{padding:100px 0}
.section-intro{display:grid;gap:25px}
.section-intro h2,.about-title,.project-copy h2,.contact-head h2{font-size:clamp(2.5rem,5.7vw,5.5rem);line-height:.96;letter-spacing:-.055em;margin:16px 0 0;font-weight:800}
.section-intro>p{max-width:480px;color:#686e77;font-size:14px;line-height:1.8}

/* categories */
.category-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:55px}
.category-item{position:relative;padding:18px;background:#fff;border:1px solid #e1e1e3;border-radius:var(--radius-lg);transition:.3s;overflow:hidden}
.category-item:hover{transform:translateY(-5px);border-color:#d8b4b8;box-shadow:0 20px 45px rgba(16,17,20,.07)}
.category-index{font-size:9px;color:#8b9098;letter-spacing:.12em}
.category-visual{height:260px;position:relative;display:flex;align-items:center;justify-content:center;background:#f2f1ed;border-radius:var(--radius-md);margin-top:12px}
.category-bottom{display:flex;align-items:end;justify-content:space-between;padding-top:16px}
.category-bottom small,.product-info small{font-size:9px;color:#7d838c;text-transform:uppercase;letter-spacing:.15em}
.category-bottom h3{font-size:17px;margin:6px 0 0}
.arrow-link{width:38px;height:38px;display:grid;place-items:center;border:1px solid #d9d9dc;border-radius:var(--radius-sm);font-size:16px;transition:.2s}
.category-item:hover .arrow-link{background:var(--red);color:#fff;border-color:var(--red)}
.pendant-visual .line{position:absolute;top:20px;width:1px;height:70px;background:#20242a}
.pendant-visual .shade{width:135px;height:82px;background:#14171b;clip-path:polygon(25% 0,75% 0,100% 100%,0 100%);position:absolute;top:90px}
.pendant-visual .light{position:absolute;top:165px;width:72px;height:9px;background:#ffd2d6;border-radius:50%;box-shadow:0 18px 40px #f5a1aa}
.track-visual .track{width:70%;height:5px;background:#17191d;position:absolute;top:80px;border-radius:10px}
.track-visual i{width:24px;height:58px;background:#17191d;position:absolute;top:84px;border-radius:5px}
.track-visual i:after{content:"";position:absolute;left:3px;right:3px;bottom:-4px;height:8px;background:#ffd7da;border-radius:50%;box-shadow:0 12px 30px #ef9aa3}
.track-visual i:nth-of-type(1){left:27%}.track-visual i:nth-of-type(2){left:47%}.track-visual i:nth-of-type(3){right:27%}
.panel-visual span{width:145px;height:145px;background:#fff0f1;box-shadow:0 0 0 8px #dedfe1,0 0 45px #f1b9be;transform:perspective(500px) rotateX(55deg) rotateZ(45deg);border-radius:8px}
.wall-lamp{width:90px;height:140px;background:#1c2025;position:relative;border-radius:10px}
.wall-lamp:after{content:"";position:absolute;left:12px;right:12px;bottom:12px;height:55%;background:#ffd9dc;border-radius:6px;box-shadow:0 20px 45px #e88f99}

/* product dark area */
.dark-section{background:var(--ink);color:#fff;padding:120px 0;border-radius:var(--radius-xl);margin:0 14px}
.section-intro.dark>p{color:#9ca0a8}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:38px}
.filter{border:1px solid #3a3c42;color:#b5b8bf;background:transparent;padding:10px 14px;font-size:11px;font-weight:700;border-radius:var(--radius-sm);transition:.2s}
.filter.active,.filter:hover{background:var(--red);color:#fff;border-color:var(--red)}
.product-grid{display:grid;grid-template-columns:1fr;gap:36px 18px;margin-top:30px}
.product-card{transition:.25s}
.product-card.hidden-card{display:none}
.product-shot{height:360px;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:var(--radius-lg)}
.shot-one{background:linear-gradient(135deg,#e5dfe0,#b49a9e)}
.shot-two{background:linear-gradient(135deg,#dadee2,#8e979f)}
.shot-three{background:linear-gradient(135deg,#d7cbca,#796d6e)}
.shot-four{background:linear-gradient(135deg,#e4d4d4,#987073)}
.shot-five{background:linear-gradient(135deg,#d7d9d6,#868a87)}
.shot-six{background:linear-gradient(135deg,#ccd0d5,#747a82)}
.tag{position:absolute;top:12px;left:12px;background:#fff;color:var(--red);padding:7px 9px;font-size:8px;font-weight:800;letter-spacing:.1em;border-radius:7px;box-shadow:0 5px 16px rgba(16,17,20,.08)}
.ring-pendant{width:180px;height:180px;border:14px solid #222831;border-radius:50%;box-shadow:inset 0 0 0 4px #ffd5d9,0 0 45px rgba(229,22,39,.22);position:relative}
.ring-pendant:before{content:"";position:absolute;left:50%;bottom:100%;width:1px;height:170px;background:#34393f}
.pro-track{width:68%;height:6px;background:#16191d;display:flex;justify-content:space-around;border-radius:10px}
.pro-track i{width:26px;height:65px;background:#14171b;position:relative;top:6px;border-radius:5px}
.pro-track i:after{content:"";position:absolute;bottom:-4px;left:3px;right:3px;height:8px;background:#ffd7da;border-radius:50%;box-shadow:0 12px 25px #ef98a2}
.outdoor-wall{width:125px;height:180px;background:#24272b;position:relative;border-radius:var(--radius-md)}
.outdoor-wall:after{content:"";position:absolute;left:14px;right:14px;bottom:14px;height:48%;background:#ffd7da;border-radius:8px;box-shadow:0 25px 60px #e98f99}
.orb-pendant{position:relative;width:220px;height:170px}
.orb-pendant:before{content:"";position:absolute;left:50%;bottom:72%;width:1px;height:130px;background:#51483d}
.orb-pendant i{position:absolute;width:65px;height:65px;border-radius:50%;background:#ffe4e6;box-shadow:0 0 30px #e9a4aa}
.orb-pendant i:nth-child(1){left:0;bottom:15px}.orb-pendant i:nth-child(2){left:78px;top:10px}.orb-pendant i:nth-child(3){right:0;bottom:24px}
.led-panel{width:190px;height:190px;background:#fff0f1;box-shadow:0 0 0 9px #e4e5e5,0 0 50px #eab1b6;transform:perspective(500px) rotateX(55deg) rotateZ(45deg);border-radius:8px}
.bollard-light{width:58px;height:230px;background:#262b30;position:relative;border-radius:8px}
.bollard-light:after{content:"";position:absolute;left:8px;right:8px;top:18px;height:58px;background:#ffd7da;border-radius:5px;box-shadow:0 0 35px #e4929a}
.product-info{display:flex;align-items:end;justify-content:space-between;gap:15px;padding-top:13px}
.product-info h3{font-size:15px;margin-top:5px}
.product-info a{color:#ff8d96;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}

/* about */
.about-visual{min-height:560px;background:var(--ink);position:relative;overflow:hidden;color:#fff;padding:40px;border-radius:var(--radius-xl);box-shadow:0 24px 60px rgba(16,17,20,.12)}
.grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:42px 42px}
.about-years{position:relative;z-index:2;font-size:clamp(7rem,16vw,12rem);font-weight:800;letter-spacing:-.08em;line-height:.8}
.about-years sup{font-size:.24em;color:#ff6672;position:relative;top:-2em}
.about-caption{position:relative;z-index:2;margin-top:28px;font-size:10px;letter-spacing:.16em;color:#aeb1b7}
.about-disc{position:absolute;border-radius:50%}
.about-disc.one{width:230px;height:230px;background:var(--red);right:-80px;bottom:-60px;box-shadow:0 0 90px rgba(229,22,39,.22)}
.about-disc.two{width:100px;height:100px;border:20px solid #fff;left:42%;bottom:18%;opacity:.88}
.about-copy{color:#646a73;line-height:1.9;margin-top:24px;max-width:600px}
.about-list{margin-top:34px;border-top:1px solid #d3d4d6}
.about-list>div{display:grid;grid-template-columns:45px 1fr;padding:17px 0;border-bottom:1px solid #d3d4d6}
.about-list b{font-size:10px;color:var(--red)}
.about-list strong{display:block;font-size:14px}
.about-list small{display:block;margin-top:5px;color:#727780;font-size:11px}

/* project */
.project-section{padding-bottom:110px}
.project-panel{display:grid;background:var(--ink);color:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 26px 65px rgba(16,17,20,.13)}
.project-copy{padding:48px 30px}
.project-copy>p:not(.eyebrow){color:#a0a3aa;line-height:1.8;max-width:510px;margin-top:20px}
.interior-scene{min-height:500px;position:relative;overflow:hidden;background:linear-gradient(135deg,#3b3839,#151518)}
.room-ceiling{position:absolute;left:0;right:0;top:0;height:20%;background:#292729}
.room-light{position:absolute;left:58%;top:35px;width:120px;height:75px;background:#111;clip-path:polygon(20% 0,80% 0,100% 100%,0 100%)}
.room-light:before{content:"";position:absolute;left:50%;bottom:100%;width:1px;height:80px;background:#68696d}
.room-light:after{content:"";position:absolute;left:13px;right:13px;bottom:-2px;height:10px;background:#ffd5d9;border-radius:50%;box-shadow:0 0 45px #e9939b}
.room-glow{position:absolute;width:270px;height:270px;border-radius:50%;background:rgba(229,22,39,.12);filter:blur(25px);right:13%;top:18%}
.room-sofa{position:absolute;left:8%;bottom:10%;width:58%;height:26%;background:#928a8b;border-radius:22px 22px 8px 8px}
.room-sofa:before{content:"";position:absolute;left:0;right:0;top:-40%;height:65%;background:#9d9495;border-radius:22px 22px 8px 8px}
.room-table{position:absolute;right:9%;bottom:9%;width:185px;height:48px;background:#725657;border-radius:50%}
.room-art{position:absolute;right:8%;top:20%;width:115px;height:145px;border:1px solid #8b8c90;border-radius:8px}

/* testimonials */
.testimonial-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:50px}
.testimonial-grid blockquote{margin:0;padding:26px;background:#fff;border:1px solid #e0e0e2;border-radius:var(--radius-lg);transition:.25s}
.testimonial-grid blockquote:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(16,17,20,.06)}
.testimonial-grid span{font-size:10px;letter-spacing:.12em;color:var(--red)}
.testimonial-grid p{font-size:15px;color:#515761;line-height:1.8;margin:20px 0}
.testimonial-grid footer{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}

/* contact */
.contact-section{background:var(--red);color:#fff;padding:110px 0;margin:0 14px 14px;border-radius:var(--radius-xl);overflow:hidden}
.contact-section .eyebrow.light{color:#ffe1e4}
.contact-section .eyebrow.light>span{background:#fff}
.contact-head p:last-child{color:#ffe1e4;margin-top:22px;line-height:1.7}
.contact-grid{display:grid;grid-template-columns:1fr;margin-top:55px;gap:10px}
.contact-grid a{display:grid;grid-template-columns:80px 1fr 30px;align-items:center;padding:20px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.07);border-radius:var(--radius-md);transition:.25s}
.contact-grid a:hover{background:#fff;color:var(--red);transform:translateY(-2px)}
.contact-grid small{font-size:9px;color:#ffe2e5;letter-spacing:.12em}
.contact-grid a:hover small{color:#a6101b}
.contact-grid strong{font-size:13px;word-break:break-word}
.contact-grid span{text-align:right}

/* footer */
footer{background:#0b0c0f;color:#8f939a;padding:27px 0;font-size:10px}
.footer-row{display:flex;flex-direction:column;gap:18px}
.footer-row div{display:flex;gap:18px}
.footer-row a:hover{color:#fff}

@media(min-width:480px){.brand-text{display:block}}
@media(min-width:640px){
  .category-grid{grid-template-columns:repeat(2,1fr)}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .testimonial-grid{grid-template-columns:repeat(3,1fr)}
  .footer-row{flex-direction:row;align-items:center;justify-content:space-between}
}
@media(min-width:1024px){
  .desktop-nav{display:flex}
  .section-intro{grid-template-columns:1fr 430px;align-items:end}
  .category-grid{grid-template-columns:repeat(4,1fr)}
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .project-panel{grid-template-columns:1fr 1fr}
  .project-copy{padding:70px}
  .footer-row{font-size:11px}
}
@media(max-width:639px){
  .hero-section{padding-top:40px}
  .hero-visual{min-height:490px;border-radius:var(--radius-lg)}
  .hero-metrics{grid-template-columns:1fr;gap:15px}
  .hero-metrics div,.hero-metrics div+div{border:0;padding:0}
  .section,.dark-section{padding:85px 0}
  .dark-section,.contact-section{margin-left:8px;margin-right:8px;border-radius:var(--radius-lg)}
  .product-shot{height:310px}
  .about-visual{min-height:430px;border-radius:var(--radius-lg)}
  .section-sm{padding:80px 0}
  .project-panel{border-radius:var(--radius-lg)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ticker-track{animation:none}
}
