/* Shared layout for the entire website; component artwork lives in styles.css. */
:root{--content-max:1600px;--content-gutter:clamp(20px,4.3vw,96px);--section-gap:clamp(38px,4vw,64px)}
body{background:var(--bg)}
.container{width:min(calc(100% - var(--content-gutter)*2),var(--content-max));max-width:var(--content-max)}
main{overflow:clip}
.section-space{padding-block:var(--section-gap)}
.section-topline{margin-bottom:clamp(18px,1.8vw,26px)}
.section-kicker,.section-index{font-size:10px}
h2{font-size:clamp(27px,2.45vw,39px);line-height:1.45;letter-spacing:-1px}
.muted{color:#929b89}
.section-heading{margin-bottom:20px;gap:40px}
.section-heading p{font-size:14px;line-height:1.8;max-width:610px;margin-top:10px}
.section-side-note{font-size:13px}
.nav-shell{height:clamp(72px,5vw,82px)}
.desktop-nav{gap:clamp(24px,2.5vw,42px);margin-right:clamp(20px,3vw,58px)}
.desktop-nav a{font-size:14px;padding-block:28px}
.desktop-nav a.active::after{bottom:15px}
.nav-contact{font-size:13px}
.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(20px,3vw,60px);min-height:0;padding-block:clamp(32px,4vw,54px) clamp(48px,5vw,68px)}
.hero h1{font-size:clamp(45px,4.55vw,78px);line-height:1.3;letter-spacing:-2px;margin:20px 0 18px}
.hero-description{font-size:clamp(14px,1.05vw,17px);line-height:2}
.hero-eyebrow{font-size:10px}
.hero-actions{gap:20px;margin-top:24px}
.hero-art{width:100%;min-width:0;margin:0;height:clamp(310px,29vw,470px)}
.hero-bottom{font-size:12px;margin-top:24px}
.hero-bottom small{font-size:9px}
.button{font-size:13px;min-height:50px}
.belief-strip .container{min-height:46px;font-size:10px;letter-spacing:1.5px}
.product-filters{margin-top:20px;margin-bottom:18px}
.filter{font-size:12px;padding:10px 18px}
.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,1.5vw,22px)}
.product-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);min-height:clamp(284px,20vw,324px);height:auto;border-radius:12px;background:#191e16;border-color:#34412a}
.cooking-card{background:#211d18;border-color:#433a2c}
.wallpaper-card{background:#1d1b22;border-color:#3c3445}
.community-card{background:#192025;border-color:#2f3d46}
.product-card::after{display:none}
.card-copy{padding:clamp(22px,1.7vw,28px);padding-right:12px;align-self:stretch}
.product-top{gap:10px;margin-bottom:14px}
.app-icon{width:34px;height:34px;flex-shrink:0}
.product-label{white-space:normal;font-size:8px;line-height:1.8;letter-spacing:.7px}
.card-number{right:22px;top:20px;font-size:11px;color:#a9b29a80;z-index:4}
.product-card h3{font-size:clamp(21px,1.8vw,29px);line-height:1.4;margin-bottom:12px;letter-spacing:-.5px}
.product-title-en{display:none}
.card-copy>p{font-size:13px;line-height:1.8;margin-bottom:10px}
.product-tags{max-width:none;gap:6px}
.product-tags span{font-size:10px;border:0;padding:3px 0}
.product-tags span+span::before{content:"·";margin-right:6px;opacity:.5}
.card-link{min-height:38px;padding:0;background:transparent!important;border-radius:0;font-size:12px;gap:24px;margin:auto 0 0}
.product-stage{min-width:0;position:relative;align-self:stretch;overflow:hidden;background:radial-gradient(ellipse at 65% 55%,#b7e9950d,transparent 70%)}
.product-preview{--preview-rotation:-5deg;position:absolute;top:50%;right:auto;left:8%;width:94%;max-width:355px;transform:translateY(-40%) rotate(var(--preview-rotation));transform-origin:center;opacity:1}
.cooking-preview{--preview-rotation:6deg;width:85%;max-width:290px;left:12%}
.community-preview{--preview-rotation:4deg}
.wallpaper-preview{top:48%}
.product-card:hover .product-preview{transform:translateY(-43%) rotate(0deg)}
.product-footnote{font-size:11px;line-height:1.8}
.services-section{border-top:1px solid #293322;background:#141811}
.service-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,112px)}
.service-intro h2{font-size:clamp(28px,2.6vw,40px);line-height:1.45}
.service-intro>p{font-size:14px;color:#97a18b;line-height:1.8;margin:16px 0}
.service-contact{display:inline-flex;align-items:center;gap:28px;font-size:13px;color:var(--green);padding:8px 0}
.service-contact span{font-size:20px}
.service-seal{display:flex;align-items:center;gap:14px;margin-top:48px;font-size:9px;letter-spacing:1.5px;color:#6e805e}
.service-seal i{width:22px;height:1px;background:#415334}
.service-list{border-top:1px solid #38462d}
.service-item{display:grid;grid-template-columns:32px minmax(0,1fr) 36px;gap:18px;padding:18px 0;border-bottom:1px solid #38462d}
.service-number{font-size:10px;color:#83976f;padding-top:5px}
.service-item h3{font-size:20px;font-weight:500;margin:0 0 8px}
.service-item p{font-size:13px;line-height:1.9;color:#8e9e7e;max-width:480px;margin:0}
.service-tags{display:flex;gap:18px;margin-top:13px;font-size:10px;color:#687e57}
.service-item button{align-self:start;width:36px;height:36px;border:1px solid #3e5130;border-radius:50%;background:transparent;color:#b4cd9a;font-size:19px;transition:background .2s}
.service-item button:hover{background:#2c3e21}
.about-section{background:var(--bg);border-block:1px solid #2b3324}
.about-grid{gap:clamp(36px,7vw,110px);margin-top:0;align-items:start}
.about-caption{font-size:12px}
.about-intro h2{font-size:clamp(28px,2.6vw,40px);line-height:1.45;margin:12px 0 16px}
.about-intro p{font-size:14px;line-height:1.85;max-width:590px}
.about-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;padding:16px 0;max-width:520px;border-block:1px solid #34412b}
.about-stats div{display:flex;flex-direction:column;gap:6px}
.about-stats strong{color:#c4ddaa;font-weight:400;font-size:28px}
.about-stats span{font-size:11px;line-height:1.6;color:#859777}
.about-signature{margin-top:27px}
.principles article{padding-block:18px}
.principles h3{font-size:20px;margin-bottom:8px}
.principles h3 span{display:inline-block;font-size:8px;letter-spacing:1px;margin:0 0 0 12px;vertical-align:middle}
.principles p{font-size:13px;line-height:1.9}
.lab-section::after{display:none}
.lab-status{font-size:9px}
.lab-grid{gap:clamp(16px,1.5vw,22px);margin-top:20px}
.lab-card{min-height:174px;padding:22px;background:#181d15}
.inspiration-lab{background:#1a1920}
.lab-card strong{font-size:23px}
.lab-card-top{font-size:9px}
.lab-badge{font-size:10px}
.lab-description{max-width:none;font-size:13px;line-height:1.9}
.lab-card-bottom{margin-top:14px}
.lab-description{margin-top:8px}
.lab-link{font-size:12px;margin-top:14px}
.focus-illustration,.inspiration-illustration{width:80px;height:80px}
.contact-section{padding-top:0;padding-bottom:var(--section-gap)}
.contact-panel{padding:clamp(26px,2.5vw,40px);min-height:0}
.contact-copy h2{font-size:clamp(29px,2.7vw,43px);margin-top:12px;line-height:1.4}
.contact-copy p{font-size:14px;line-height:1.9}
.contact-copy .section-kicker{font-size:10px}
.contact-actions>span{font-size:12px}
.footer-main{padding-bottom:22px}.site-footer{padding-bottom:20px}
.footer-links{font-size:12px;gap:28px}
.footer-bottom{font-size:11px;line-height:1.8;padding-top:16px}
.footer-made{font-size:9px}
@media(min-width:1900px){.hero h1{font-size:80px}.hero-art{height:500px}}
@media(max-width:1080px){
  .desktop-nav,.nav-contact{display:none}.menu-toggle{display:block;margin-left:auto}
  .hero h1{font-size:clamp(40px,4.9vw,52px)}.hero-eyebrow{font-size:8px;letter-spacing:.7px;gap:6px}.hero-actions{gap:6px}.hero .button{padding-inline:15px;font-size:12px;gap:18px}
  .product-grid{grid-template-columns:1fr}.product-card{min-height:264px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.card-copy{padding:22px}.product-card h3{font-size:25px}
  .product-preview{left:10%;width:80%;max-width:330px}.cooking-preview{width:72%;max-width:265px;left:15%}
  .service-grid{gap:40px}.service-intro h2{font-size:32px}
  .lab-card{padding:22px}.lab-card strong{font-size:20px}.lab-card-bottom{gap:15px}.lab-description{font-size:12px}.focus-illustration,.inspiration-illustration{width:76px;height:76px}
}
@media(max-width:740px){
  :root{--content-gutter:22px;--section-gap:36px}html{scroll-padding-top:84px}.nav-shell{height:66px}
  .hero{grid-template-columns:1fr;min-height:0;gap:0;padding-top:28px;padding-bottom:40px}.hero h1{font-size:clamp(39px,7.8vw,55px);letter-spacing:-1.5px;margin:18px 0 14px}.hero-description{font-size:14px;line-height:1.85}.hero-actions{gap:12px;margin-top:20px}.hero-bottom{display:none}
  .hero-art{height:auto;aspect-ratio:1.4;max-height:300px;margin:10px auto 0;max-width:440px}.scroll-cue{bottom:14px}
  .belief-strip .container{min-height:44px;font-size:8px;letter-spacing:.7px;gap:16px}.section-topline{margin-bottom:18px}.section-kicker,.section-index{font-size:9px}
  h2{font-size:clamp(26px,5vw,32px)}.section-heading h2 .muted{display:block}.section-heading p{font-size:13px}.product-filters{margin-top:18px}.filter{font-size:11px;padding:9px 12px}
  .service-grid{grid-template-columns:1fr;gap:22px}.service-intro h2{font-size:28px}.service-intro>p{font-size:13px;margin-block:12px}.service-contact{padding-block:4px}
  .about-grid{grid-template-columns:1fr;gap:24px}.about-intro h2{font-size:28px;margin:10px 0 12px}.about-intro p{font-size:13px}.about-stats{max-width:none;padding-block:14px;margin-top:16px}.about-stats strong{font-size:25px}.about-stats span{font-size:10px}
  .principles article{padding-block:16px;gap:18px}.principles h3{font-size:19px}.principles h3 span{display:none}.principles p{font-size:12px}.principle-icon{padding-top:3px}.lab-grid{grid-template-columns:1fr;gap:12px;margin-top:18px}.lab-card{min-height:162px;padding:20px}.lab-card strong{font-size:21px}.lab-description{font-size:12px}.lab-status{display:none}
  .contact-panel{padding:24px}.contact-copy h2{font-size:28px}.contact-copy p{font-size:13px;margin-top:12px}.contact-actions{margin-top:18px;gap:10px}.footer-main{gap:20px;padding-bottom:18px}.footer-links{font-size:11px;gap:18px;flex-wrap:wrap}.footer-bottom{font-size:10px;gap:14px}
}
@media(max-width:560px){
  .product-card{grid-template-columns:minmax(0,1fr) 34%;min-height:220px}.card-copy{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto auto auto 1fr;align-content:start;align-items:start;gap:10px;padding:18px}
  .product-top{grid-column:1;margin:0;gap:0}.app-icon{width:28px;height:28px;padding:5px}.product-label{display:none}.product-card h3{grid-column:2;font-size:21px;line-height:1.35;align-self:center;margin:0}.card-number{right:12px;top:12px;font-size:9px}
  .card-copy>p{grid-column:1/-1;font-size:13px;line-height:1.7;margin:0}.card-copy>p br{display:none}.product-tags{grid-column:1/-1;margin:0;gap:4px}.product-tags span{font-size:9px}.product-tags span+span::before{margin-right:4px}.card-link{grid-column:1/-1;margin:0;align-self:end;min-height:36px;font-size:11px;gap:18px}.product-stage{height:auto;min-height:220px}
  .product-preview{width:230px;max-width:none;left:8px;top:50%;transform:translateY(-43%) rotate(var(--preview-rotation)) scale(.68);transform-origin:left center}.cooking-preview{width:200px;left:4px}.wallpaper-preview{top:50%}.product-card:hover .product-preview{transform:translateY(-45%) rotate(0deg) scale(.68)}
  .product-footnote{align-items:flex-start;font-size:10px}.product-footnote>span:first-child{white-space:nowrap}.product-footnote>span:last-child{max-width:205px}
  .service-item{grid-template-columns:25px minmax(0,1fr) 32px;gap:12px;padding-block:16px}.service-item h3{font-size:19px}.service-item p{font-size:12px}.service-tags{gap:13px;font-size:9px}.service-item button{width:32px;height:32px}
}
@media(max-width:360px){
  :root{--content-gutter:16px}.hero h1{font-size:37px}.hero-eyebrow{font-size:7px;gap:5px}.hero-description{font-size:13px}.hero .button{padding-inline:12px;gap:12px}.belief-strip .container{font-size:7px;gap:10px}
  .card-copy{padding-inline:14px;column-gap:8px}.product-card h3{font-size:19px}.lab-card{padding:18px}.lab-card strong{font-size:20px}.lab-description{font-size:11px}.focus-illustration,.inspiration-illustration{width:72px;height:72px}.contact-panel{padding-inline:23px}.contact-copy p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.product-preview,.service-item button{transition:none}}
