:root{
  --bg:#131317;
  --bg-soft:#0f0f13;
  --ink:#1c1915;
  --muted:#5d564b;
  --line:rgba(255,255,255,.14);
  --gold:#a8834f;      /* bronze — flat, no gradients */
  --gold-2:#b59468;
  --dark:#16130f;
  --dark-2:#1d1914;
  --white:#ffffff;
  --max:1440px;
  --radius:0px;
  --radius-lg:0px;
  --shadow:none;
}

    .page-hero::after {display:none !important}

*{box-sizing:border-box}
h1,h2,h3,h4,h5,h6{margin:0}
p{margin:0 0 1em}
html{scroll-behavior:smooth}body{margin:0;line-height:1.6;-webkit-font-smoothing:antialiased}img,video{max-width:100%;display:block}a{text-decoration:none;}button,input,select,textarea{font:inherit}button{cursor:pointer}
.container,.footer-grid,.hero-inner{width:min(var(--max),calc(100% - 64px));margin:0 auto}
.site-header{position:fixed;left:0;right:0;top:0;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 calc((100vw - min(var(--max), calc(100vw - 64px)))/2);height:84px;transition:.25s ease}
.site-header.scrolled{backdrop-border-bottom:1px solid var(--line)}
.brand{font-size:21px;font-weight:400;white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:8px}.nav-item{position:relative}.nav-link,.start-pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;font-size:13px;font-weight:500;}.start-pill{padding:0 22px;border:1px solid var(--line);font-size:12px;text-transform:uppercase}
.dropdown{position:absolute;top:calc(100% + 12px);left:0;display:none;min-width:220px;padding:10px;border:1px solid var(--line);}.dropdown a{display:block;padding:10px 12px;font-size:14px}.nav-item:hover .dropdown{display:block}
.nav-toggle{display:none;border:1px solid var(--line);padding:10px 14px}

.hero-only{position:relative;min-height:100vh;overflow:hidden}.hero-video,.hero-bg,.hero-overlay{position:absolute;inset:0}.hero-video{width:100%;height:100%;object-fit:cover;opacity:.26;}.hero-bg{background-image:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.28) 42%,rgba(0,0,0,.18) 74%,rgba(0,0,0,.48)), url('images/hotel-lobby.jpg');background-position:center;background-size:cover;mix-blend-mode:screen;opacity:.34}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;align-items:end;min-height:100vh;padding-top:142px;padding-bottom:90px;gap:36px}.hero-copy{max-width:680px}.kicker,.eyebrow,.breadcrumb{display:inline-block;font-size:12px;text-transform:uppercase}.kicker{margin-bottom:20px}.hero-title,.page-title,.section-title,.cta-band h2,.detail-panel h2,.detail-hero-copy h1,.woo-panel h2,.woo-summary h2,.project-card-body h3,.carousel-copy h3,.material-card h3,.control-card h3,.solution-stage h3,.card h3,.check-card h3{font-weight:400;}.hero-title{font-size:80px;line-height:.92;margin:0 0 16px;max-width:650px}.hero-copy p{font-size:18px;line-height:1.75;max-width:620px}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 30px;border:1px solid var(--line);font-weight:500;font-size:13px;text-transform:uppercase;transition:.25s ease}.btn.outline,.btn.dark{border-}.hero-mini-note{display:inline-flex;font-size:13px;}
.trust-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;align-self:end;padding:28px 32px;border:1px solid var(--line);backdrop-}.trust-item{padding-left:22px;border-left:1px solid var(--line)}.trust-item:first-child{padding-left:0;border-left:0}.trust-item strong{display:block;font-size:48px;line-height:1;}.trust-item span{display:block;margin-top:8px;font-size:14px;}

.page{padding-top:42px !important}.page-hero{position:relative;isolation:isolate;padding:94px 0 88px;overflow:hidden}.page-hero::before{content:"";position:absolute;inset:0;z-index:-1}.page-hero::after{content:"";position:absolute;top:0;bottom:0;right:0;width:43%;background-size:cover;background-position:center;clip-path:polygon(11% 0,100% 0,89% 100%,0 100%);opacity:.9;z-index:-1;}
.banner-design::after{background-image:url('images/showroom.jpg')}.banner-hotel::after{background-image:url('images/sea-suite.jpg')}.banner-manufacturing::after{background-image:url('images/factory.jpg')}.banner-material::after{background-image:url('images/living-room.jpg')}.banner-office::after{background-image:url('images/office-a.jpg')}.banner-installation::after{background-image:url('images/meeting.jpg')}
.breadcrumb{margin-bottom:18px}.page-title{font-size:66px;line-height:.96;margin:0 0 12px;max-width:820px}.page-lead{font-size:18px;line-height:1.75;max-width:760px;}

.section{padding:88px 0}.section.compact{padding:56px 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:34px}.eyebrow{margin-bottom:10px}.section-title{font-size:54px;line-height:.98;margin:0;max-width:820px}.section-copy{max-width:640px;}
.grid{display:grid;gap:22px}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card,.form-card,.detail-panel,.summary-tile,.control-card,.check-card,.woo-panel,.woo-summary,.project-card,.material-card,.cta-band,.visual-card,.process-visual-card{border:1px solid var(--line);}.dark .card,.dark .detail-panel,.dark .control-card,.dark .project-card,.dark .carousel-copy{border-}
.pad{padding:28px}.card h3{margin:0 0 10px;font-size:34px}.card p{margin:0;}
.icon-list,.compact-list,.meta-list{padding-left:18px;margin:14px 0 0}.icon-list li,.compact-list li,.meta-list li,.field ul li,.plain li{margin:6px 0;text-align:left}
.pill-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.pill{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid var(--line);font-size:13px;font-weight:500}.dark .pill{border-}.pill.active{border-}
.visual-card{padding:0;overflow:hidden}.room-visual{position:relative;min-height:320px;overflow:hidden;background-size:cover;background-position:center}.room-visual::after{content:"";position:absolute;inset:0;}.tiny-label{position:absolute;top:14px;left:14px;z-index:2;padding:7px 10px;font-size:10px;font-weight:700;text-transform:uppercase;}.img-villa,.villa{background-image:url('images/living-room.jpg')}.img-hotel{background-image:url('images/sea-suite.jpg')}.img-office,.banner-office .room-visual{background-image:url('images/office-a.jpg')}.img-commercial{background-image:url('images/hotel-lobby.jpg')}.img-restaurant{background-image:url('images/restaurant.jpg')}.img-apartment{background-image:url('images/apartment.jpg')}.img-manufacturing{background-image:url('images/factory.jpg')}.img-material,.material{background-image:url('images/showroom.jpg')}.img-installation,.installation,.finished{background-image:url('images/meeting.jpg')}.img-design,.design{background-image:url('images/showroom.jpg')}.logistics{background-image:url('images/office-b.jpg')}

.solution-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;position:relative}.solution-flow::before{content:"";position:absolute;top:100px;left:7%;right:7%;border-top:1px dashed var(--line)}.solution-stage{position:relative}.stage-media{position:relative;margin-bottom:16px}.stage-media .room-visual{min-height:240px}.stage-no{position:absolute;right:16px;bottom:16px;z-index:2;width:44px;height:44px;display:grid;place-items:center;font-weight:700;}.stage-copy{padding:0 4px}.solution-stage h3{font-size:30px;margin:0 0 8px}.solution-stage p{margin:0;}
.control-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.control-card{padding:26px;}.control-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}.control-top span{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--line)}.control-card h3{margin:0 0 12px;font-size:32px;}.control-card p{margin:0;}
.cta-band{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:34px 36px;}.cta-band h2{font-size:44px;line-height:.96;margin:0 0 10px}.cta-band p{margin:0;max-width:720px}
.footer{padding:50px 0 58px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:28px}.footer h3{margin:0 0 10px;font-size:28px}.footer a{display:block;margin:8px 0;}.footer p{margin:14px 0 0;max-width:360px}

.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{display:flex;flex-direction:column;overflow:hidden;border-}.project-card-media .room-visual{min-height:248px}.project-card-body{padding:22px}.project-card-body h3{margin:0 0 8px;font-size:36px;}.project-subtitle{margin:0 0 18px;}.project-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-specs strong{display:block;}.project-specs span{display:block;font-size:13px}.project-products b{}.view-project{display:inline-flex;margin-top:8px;font-weight:600}

.detail-hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:36px;align-items:center;padding:54px 0}.back-link{display:inline-flex;margin-bottom:16px;}.detail-hero-copy h1{font-size:72px;line-height:.92;margin:0 0 12px;}.detail-hero-copy p{font-size:17px}.project-hero-slider,.project-carousel{position:relative;overflow:hidden}.carousel-track{display:flex;transition:transform .4s ease}.project-hero-slider .carousel-slide{min-width:100%}.project-hero-slider .room-visual{min-height:480px;border:1px solid var(--line)}.carousel-dots{display:flex;justify-content:center;gap:10px;margin-top:16px}.carousel-dots button{width:10px;height:10px;border:0;padding:0}.carousel-nav{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 12px;pointer-events:none}.carousel-nav button{pointer-events:auto;width:42px;height:42px;border:1px solid var(--line);}
.project-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.summary-tile{padding:22px 20px;}.summary-tile span{display:block;font-size:12px;text-transform:uppercase;margin-bottom:8px}.summary-tile strong{font-size:18px}
.detail-split{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}.detail-panel{padding:28px}.detail-panel h2{font-size:50px;line-height:.96;margin:0 0 12px}.detail-panel h3{margin:0 0 10px;font-size:34px}.challenge-grid{display:grid;gap:18px}
.project-carousel .carousel-slide{display:grid;grid-template-columns:1fr .9fr;gap:24px;min-width:100%;align-items:stretch}.carousel-visual .room-visual{min-height:430px}.carousel-copy{padding:28px;border:1px solid var(--line)}.carousel-copy h3{font-size:42px;margin:0 0 10px;}.carousel-copy p{margin:0}.carousel-copy ul{padding-left:18px;margin:14px 0 0}
.step-line{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;position:relative}.step-line::before{content:"";position:absolute;top:26px;left:8%;right:8%;border-top:1px dashed var(--line)}.step{position:relative;border:1px solid var(--line);padding:24px 18px 20px;}.num{position:relative;z-index:2;display:grid;place-items:center;width:52px;height:52px;font-weight:700;margin:0 auto 16px}.step h3{margin:0 0 8px;font-size:30px;text-align:center}.step p{text-align:center;margin:0;}

.process-visual-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:16px}.process-visual-card{overflow:hidden}.process-visual-card .room-visual{min-height:240px}.copy{padding:18px 20px}.copy h3{font-size:34px;margin:0 0 8px}.copy p{margin:0;}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.stat{padding:24px;border:1px solid var(--line);}.stat strong{display:block;font-size:46px;line-height:1;}.stat span{display:block;margin-top:8px}
.material-card{position:relative;min-height:210px;padding:22px;display:flex;align-items:flex-end;overflow:hidden;border-}.material-card::before{content:"";position:absolute;inset:0;z-index:0}.material-card>div{position:relative;z-index:1}.material-card h3{margin:0 0 6px;font-size:34px}.material-card{background-image:url('images/showroom.jpg');background-size:cover;background-position:center}.material-card.stone{background-image:url('images/hotel-lobby.jpg')}.material-card.metal{background-image:url('images/factory.jpg')}.material-card.light{background-image:url('images/restaurant.jpg')}.material-card.fabric{background-image:url('images/living-room.jpg')}.material-card.board{background-image:url('images/apartment.jpg')}
.form-card{padding:28px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label,.field span{font-size:14px;font-weight:600;}input,select,textarea{width:100%;padding:14px 16px;border:1px solid var(--line);outline:none}.field textarea{min-height:120px;resize:vertical}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}.check-card{padding:22px;border:1px solid var(--line)}.check-card h3{font-size:28px;margin:0 0 8px}.check-card p{margin:0;}.file-drop{padding:26px;border:1.5px dashed var(--line);text-align:center}.file-name{font-size:14px}

.woo-layout{display:grid;grid-template-columns:1.05fr .62fr;gap:24px;align-items:start}.woo-panel,.woo-summary{padding:30px}.woo-panel h2,.woo-summary h2{font-size:48px;line-height:.96;margin:0 0 12px}.woo-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.woo-product{display:block;position:relative;padding:18px;border:1px solid var(--line);}.woo-product input{position:absolute;top:16px;right:16px}.woo-product span{display:block;font-size:12px;text-transform:uppercase;margin-bottom:10px}.woo-product strong{display:block;font-size:28px;}.woo-product small{display:block;margin-top:8px;}.payment-note,.woo-checkout-note{margin-top:14px;padding:14px 16px;border:1px solid var(--line);}.payment-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.woo-summary{position:sticky;top:112px}.woo-row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.woo-logic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.woo-logic{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:center;border:1px solid var(--line);overflow:hidden}.woo-logic>div:last-child{padding-right:18px}.woo-logic h3{font-size:32px;margin:0 0 8px}.woo-logic p{margin:0;}

.project-filter .pill{appearance:none;}

@media (max-width:1260px){
  .container,.footer-grid,.hero-inner{width:min(var(--max),calc(100% - 40px))}
  .hero-inner,.detail-hero-grid,.detail-split,.woo-layout,.cols-2,.project-carousel .carousel-slide{grid-template-columns:1fr}
  .cols-3,.project-gallery,.control-grid,.process-visual-grid,.check-grid,.stat-grid,.woo-logic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cols-4,.solution-flow{grid-template-columns:repeat(3,minmax(0,1fr))}
  .project-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .step-line{grid-template-columns:repeat(3,minmax(0,1fr))}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-head{align-items:flex-start;flex-direction:column}
}
@media (max-width:860px){
  .site-header{padding:0 16px;height:76px}.page{padding-top:76px}
  .main-nav{display:none;position:absolute;top:76px;left:16px;right:16px;border:1px solid var(--line);padding:18px}.site-header.open .main-nav{display:grid;gap:8px}.site-header.open .dropdown{display:grid;position:static;border:0;padding:6px 0 0 12px}.nav-toggle{display:block}
  .container,.footer-grid,.hero-inner{width:min(var(--max),calc(100% - 28px))}
  .hero-inner{padding-top:120px;padding-bottom:40px;grid-template-columns:1fr}.hero-title{font-size:52px}.page-title,.detail-hero-copy h1{font-size:46px}.section-title{font-size:42px}.trust-strip{grid-template-columns:repeat(2,1fr)}
  .cols-3,.cols-4,.project-gallery,.control-grid,.process-visual-grid,.check-grid,.stat-grid,.woo-products,.woo-logic-grid,.project-summary-grid,.step-line,.solution-flow,.form-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}.page-hero{padding-top:78px;padding-bottom:64px}.page-hero::after{display:none}.hero-mini-note{width:100%}
  .woo-logic{grid-template-columns:1fr}.woo-layout{grid-template-columns:1fr}.woo-summary{position:static}
}


/* =========================
   V10 homepage repair
   Keep the V6 homepage structure, but prevent the trust strip from squeezing
   the hero title/buttons into a narrow left column.
   ========================= */
.page-index .hero-only{
  min-height:100vh;
  display:block;
}

.page-index .hero-inner{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-end;
  min-height:100vh;
  padding-top:150px;
  padding-bottom:0;
  gap:0;
}

.page-index .hero-copy{
  width:min(760px,100%);
  max-width:760px;
  margin-bottom:78px;
}

.page-index .hero-title{
  width:100%;
  max-width:760px;
  font-size:clamp(56px,7.2vw,92px);
  line-height:.9;
  
  margin-bottom:20px;
}

.page-index .hero-copy p{
  max-width:650px;
  font-size:18px;
}

.page-index .hero-actions{
  width:100%;
  justify-content:flex-start;
  align-items:center;
  gap:16px;
}

.page-index .hero-actions .btn{
  flex:0 0 auto;
  white-space:nowrap;
}

.page-index .hero-mini-note{
  flex:0 1 320px;
  line-height:1.55;
}

.page-index .trust-strip{
  width:100%;
  max-width:none;
  align-self:stretch;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:34px 0 36px;
  
  border-left:0;
  border-right:0;
  border-bottom:0;
  backdrop-filter:blur(8px);
}

.page-index .trust-item{
  padding:0 34px;
  min-width:0;
}

.page-index .trust-item:first-child{
  padding-left:0;
}

.page-index .trust-item strong{
  font-size:clamp(36px,3.2vw,54px);
}

@media (max-width:1260px){
  .page-index .hero-inner{
    display:flex;
    grid-template-columns:none;
  }
  .page-index .trust-strip{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .page-index .hero-inner{
    min-height:100vh;
    padding-top:120px;
  }
  .page-index .hero-copy{
    margin-bottom:48px;
  }
  .page-index .hero-actions{
    flex-direction:column;
    align-items:flex-start;
  }
  .page-index .hero-mini-note{
    flex:auto;
    width:100%;
  }
  .page-index .trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:24px 0;
  }
  .page-index .trust-item{
    padding:18px 22px;
  }
  .page-index .trust-item:nth-child(odd){
    border-left:0;
  }
}

@media (max-width:560px){
  .page-index .hero-title{
    font-size:48px;
  }
  .page-index .hero-copy p{
    font-size:16px;
  }
  .page-index .trust-strip{
    grid-template-columns:1fr;
  }
  .page-index .trust-item{
    border-left:0;
    border-top:1px solid var(--line);
  }
  .page-index .trust-item:first-child{
    border-top:0;
    padding-left:22px;
  }
}


/* =========================
   V11 refinement layer
   Homepage bottom stats alignment, number animation visual state,
   warmer banners, stronger forms, and module display polish.
   ========================= */

/* Homepage bottom stats alignment repair */
.page-index .hero-inner{
  position:relative;
  justify-content:flex-end;
  overflow:visible;
}

.page-index .hero-copy{
  margin-bottom:72px;
}

.page-index .trust-strip{
  position:relative;
  width:100vw;
  max-width:none;
  margin-left:calc((100vw - min(var(--max), calc(100vw - 64px))) / -2);
  margin-right:calc((100vw - min(var(--max), calc(100vw - 64px))) / -2);
  padding-left:calc((100vw - min(var(--max), calc(100vw - 64px))) / 2);
  padding-right:calc((100vw - min(var(--max), calc(100vw - 64px))) / 2);
  border-top:1px solid var(--line);
  border-left:0;
  border-right:0;
  border-bottom:0;
  
  
  
}

.page-index .trust-strip::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  
}

.page-index .trust-item{
  position:relative;
  z-index:1;
  min-height:92px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.page-index .trust-item strong{
  transition:color .25s ease,text-shadow .25s ease,transform .25s ease;
}

/* Home hero atmosphere */
.page-index .hero-bg{
  opacity:.42;
  mix-blend-mode:normal;
}

/* Banner background optimization */
.page-hero{
  
  border-bottom:1px solid var(--line);
}



















::after{
  opacity:.78;
  
}



/* Form optimization */
.form-card,
.woo-panel,
.woo-summary{
  
  border:1px solid var(--line);
  
}

.dark 

.form-grid{
  align-items:start;
}

.field{
  position:relative;
}

.dark .field label,
.dark .field span{
  
}

input,select,textarea{
  min-height:50px;
  transition:border-color .22s ease,box-shadow .22s ease,background .22s ease;
}

textarea{
  line-height:1.6;
}

input:focus,
select:focus,
textarea:focus{
}

.form-card .btn,
.woo-panel .btn{
  min-width:180px;
}

.payment-actions .btn{
  min-width:210px;
}

.check-grid{
  align-items:stretch;
}

.check-card{
  display:flex;
  flex-direction:column;
  min-height:156px;
}

/* Cards and module display polish */
.card,
.project-card,
.detail-panel,
.summary-tile,
.control-card,
.check-card,
.process-visual-card,
.material-card,
.cta-band{
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}

.card:hover,
.project-card:hover,
.summary-tile:hover,
.process-visual-card:hover,
.material-card:hover,
.check-card:hover{
  transform:translateY(-5px);
}

.dark .project-card:hover,
.dark .card:hover,
.dark .control-card:hover,
.dark .detail-panel:hover{
}

.room-visual::before{
  content:"";
  position:absolute;
  inset:0;
  
  z-index:1;
  pointer-events:none;
}

.room-visual .tiny-label{
  z-index:3;
}

/* Solution section: keep V6 structure but improve visual balance */
.solution-flow{
  align-items:stretch;
}

.solution-stage{
  display:flex;
  flex-direction:column;
  min-height:100%;
}

.stage-copy{
  flex:1;
  padding:4px 2px 0;
}

.stage-copy p{
  min-height:78px;
  line-height:1.62;
}

.stage-media .room-visual{
  min-height:220px;
}

/* Project cards */
.project-card-body{
  display:flex;
  flex-direction:column;
  flex:1;
}

.project-subtitle{
  min-height:66px;
}

.view-project{
  margin-top:auto;
}

/* Project detail carousel / summary */
.project-hero-slider{
  
  border:1px solid var(--line);
  
}

.summary-tile{
  min-height:118px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

/* CTA band alignment */
.cta-band{
  align-items:center;
  
}

.cta-band .btn{
  white-space:nowrap;
}

/* Footer minor polish */
.footer{
  border-top:1px solid var(--line);
}

/* Responsive alignment fixes */
@media (max-width:1260px){
  .page-index .trust-strip{
    width:100%;
    margin-left:0;
    margin-right:0;
    padding-left:0;
    padding-right:0;
  }
  .page-index .trust-item{
    padding-left:26px;
    padding-right:26px;
  }
  .page-index .trust-item:first-child{
    padding-left:0;
  }
  .stage-copy p,
  .project-subtitle{
    min-height:auto;
  }
}

@media (max-width:900px){
  .page-index .hero-copy{
    margin-bottom:42px;
  }

  .page-index .trust-strip{
    
    padding:0;
  }

  .page-index .trust-item{
    min-height:84px;
  }

  .page-index .trust-item:first-child{
    padding-left:22px;
  }

  .cta-band{
    flex-direction:column;
    align-items:flex-start;
  }

  .form-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  .page-index .trust-strip{
    margin-top:8px;
  }

  .page-index .trust-item{
    min-height:74px;
  }

  .page-index .trust-item strong{
    font-size:36px;
  }
}


/* =========================
   V12 header + form structure upgrade
   ========================= */

/* Every inner page header/banner now uses the same top overlay logic as the homepage */
.page{
  padding-top:0;
}

.page-hero{
  min-height:0;
  display:block;
  padding:154px 0 96px;
  
}

.page-hero .container{
  position:relative;
  z-index:2;
}

.page-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  
}

.page-hero::after{
  width:54%;
  right:0;
  opacity:.42;
  clip-path:none;
  
  mix-blend-mode:screen;
}

.page-title{
  font-size:clamp(56px,6vw,88px);
  max-width:980px;
}

.page-lead{
  max-width:760px;
}

/* Form structure based on provided project brief */
.smart-form{
  overflow:hidden;
  padding:0;
  
  
}

.smart-form .form-section-block{
  padding:30px 32px;
  border-bottom:1px solid var(--line);
}

.smart-form .form-section-block:last-of-type{
  border-bottom:0;
}

.form-section-title{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:16px;
  align-items:start;
  margin-bottom:20px;
}

.form-section-title>span{
  width:46px;
  height:46px;
  
  display:grid;
  place-items:center;
  
  
  font-weight:800;
  font-size:13px;
  
}

.form-section-title h3{
  margin:0 0 4px;
  
  font-size:34px;
  line-height:1;
  
}

.form-section-title p{
  margin:0;
  
  font-size:14px;
}

.choice-grid{
  display:grid;
  gap:14px;
}

.cards-5{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.cards-6{
  grid-template-columns:repeat(6,minmax(0,1fr));
}

.services-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.choice-card{
  position:relative;
  min-height:112px;
  padding:18px 16px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:4px;
  border:1px solid var(--line);
  
  
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
  cursor:pointer;
}

.choice-card input{
  position:absolute;
  top:14px;
  right:14px;
  width:16px;
  height:16px;
}

.choice-card b{
  
  font-size:28px;
  line-height:1;
  
}

.choice-card small{
  
  line-height:1.35;
}

.choice-card:hover{
  transform:translateY(-4px);
}

.choice-card:has(input:checked){
}

.upload-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.upload-card{
  position:relative;
  min-height:148px;
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  border:1.5px dashed var(--line);
  background: unset !important;
}

.upload-card span{
  
  font-size:32px;
  line-height:1;
  
}

.upload-card input{
  margin-top:8px;
  padding:10px;
  
}

.upload-large{
  min-height:190px;
  align-items:center;
  text-align:center;
}

.form-submit-row{
  padding:26px 32px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  
  border-top:1px solid var(--line);
}

.form-submit-row p{
  margin:0;
  
  font-size:14px;
  max-width:520px;
}

.form-submit-row .btn{
  min-width:220px;
}

/* Drawing form layout */
.drawing-layout{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:28px;
  align-items:start;
}

.after-upload-card{
  overflow:hidden;
  
  
  
  border:1px solid var(--line);
  
}

.after-upload-card .room-visual{
  min-height:300px;
}

.after-upload-card .copy{
  padding:28px;
}

.after-upload-card h3{
  margin:0 0 18px;
  
  font-size:40px;
  line-height:.98;
  
}

.process-list{
  display:grid;
  gap:12px;
  padding:0;
  margin:0;
  list-style:none;
}

.process-list li{
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:center;
  padding:13px 0;
  border-bottom:1px solid var(--line);
}

.process-list li:last-child{
  border-bottom:0;
}

.process-list span{
  
  font-size:13px;
}

/* Material form style cards */
.style-card-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}

.style-card{
  position:relative;
  overflow:hidden;
  min-height:130px;
  display:flex;
  align-items:flex-end;
  padding:16px;
  
  background-size:cover;
  background-position:center;
  
  cursor:pointer;
  border:1px solid var(--line);
}

.style-card:nth-child(1){background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.55)),url('images/office-a.jpg')}
.style-card:nth-child(2){background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.55)),url('images/showroom.jpg')}
.style-card:nth-child(3){background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.55)),url('images/living-room.jpg')}
.style-card:nth-child(4){background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.55)),url('images/apartment.jpg')}
.style-card:nth-child(5){background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.55)),url('images/factory.jpg')}

.style-card input{
  position:absolute;
  top:12px;
  right:12px;
  width:16px;
  height:16px;
}

.style-card span{
  position:relative;
  z-index:1;
  font-weight:700;
}

.style-card:has(input:checked){
  outline:2px solid var(--gold-2);
  outline-offset:3px;
}

/* Consultation form */
.consultation-layout{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:32px;
  align-items:start;
}

.consultation-copy{
  padding:10px 0;
}

.consultation-copy 

/* Deposit page form group repair */
.deposit-form .form-section-block{
  padding:28px 30px;
  border-bottom:1px solid var(--line);
}

.deposit-form .payment-note{
  margin-left:30px;
  margin-right:30px;
}

.deposit-form .payment-actions{
  padding:0 30px 30px;
}

.dark .smart-form .section-title,
.dark .smart-form h3{
  
}

/* Mobile */
@media (max-width:1260px){
  .cards-5,
  .cards-6,
  .services-grid,
  .style-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .drawing-layout,
  .consultation-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:860px){
  .page-hero{
    padding:130px 0 64px;
  }

  .page-hero::after{
    display:none;
  }

  .cards-5,
  .cards-6,
  .services-grid,
  .style-card-grid,
  .upload-grid{
    grid-template-columns:1fr 1fr;
  }

  .smart-form .form-section-block{
    padding:24px 22px;
  }

  .form-submit-row{
    flex-direction:column;
    align-items:flex-start;
    padding:24px 22px;
  }
}

@media (max-width:560px){
  .cards-5,
  .cards-6,
  .services-grid,
  .style-card-grid,
  .upload-grid{
    grid-template-columns:1fr;
  }

  .form-section-title{
    grid-template-columns:1fr;
  }

  .form-section-title>span{
    width:42px;
    height:42px;
  }

  .choice-card{
    min-height:96px;
  }

  .process-list li{
    grid-template-columns:1fr;
  }
}


/* =========================
   V13 Manufacturing Process refinement
   ========================= */
.manufacturing-process-section{
  position:relative;
  overflow:hidden;
}

.manufacturing-process-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  
}

.manufacturing-process-section .container{
  position:relative;
  z-index:1;
}

.process-head{
  margin-bottom:42px;
}

.manufacturing-process-layout{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:30px;
  align-items:start;
}

.process-showcase{
  position:sticky;
  top:112px;
  overflow:hidden;
  
  border:1px solid var(--line);
  
  
}

.process-showcase .room-visual{
  min-height:520px;
  
}

.process-showcase-card{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  padding:24px;
  
  
  border:1px solid var(--line);
  backdrop-filter:blur(8px);
}

.process-showcase-card span{
  display:block;
  margin-bottom:10px;
  
  font-size:12px;
  
  text-transform:uppercase;
  font-weight:700;
}

.process-showcase-card h3{
  margin:0 0 10px;
  
  
  font-size:34px;
  line-height:.98;
  
}

.process-showcase-card p{
  margin:0;
  
  font-size:14px;
  line-height:1.65;
}

.premium-process{
  display:grid;
  gap:16px;
  position:relative;
}

.premium-process::before{
  content:"";
  position:absolute;
  left:31px;
  top:26px;
  bottom:26px;
  width:1px;
  
}

.process-node{
  position:relative;
  display:grid;
  grid-template-columns:64px 1fr 230px;
  gap:20px;
  align-items:stretch;
  padding:20px;
  
  border:1px solid var(--line);
  
  transition:transform .24s ease,border-color .24s ease,background .24s ease;
}

.process-node:hover{
  transform:translateY(-4px);
}

.process-index{
  position:relative;
  z-index:2;
  width:64px;
  height:64px;
  
  display:grid;
  place-items:center;
  
  
  font-weight:900;
  
}

.process-label{
  display:inline-flex;
  margin-bottom:8px;
  
  font-size:11px;
  
  text-transform:uppercase;
  font-weight:800;
}

.process-body h3{
  margin:0 0 8px;
  
  
  font-size:34px;
  line-height:.98;
  
}

.process-body p{
  margin:0 0 12px;
  
  font-size:14px;
  line-height:1.65;
}

.process-body ul{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:0;
  margin:0;
  list-style:none;
}

.process-body li{
  padding:9px 10px;
  
  
  border:1px solid var(--line);
  
  font-size:12px;
  line-height:1.35;
  text-align:left;
}

.process-output{
  align-self:center;
  padding:18px;
  
  
  border:1px solid var(--line);
}

.process-output span{
  display:block;
  margin-bottom:8px;
  
  font-size:11px;
  
  text-transform:uppercase;
}

.process-output strong{
  display:block;
  
  
  font-size:25px;
  line-height:1;
  
}

.process-control-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:30px;
}

.process-control-strip>div{
  padding:22px 24px;
  
  border:1px solid var(--line);
  
}

.process-control-strip strong{
  display:block;
  margin-bottom:8px;
  
  
  font-size:30px;
  line-height:1;
  
}

.process-control-strip span{
  display:block;
  
  font-size:14px;
  line-height:1.55;
}

@media (max-width:1260px){
  .manufacturing-process-layout{
    grid-template-columns:1fr;
  }
  .process-showcase{
    position:relative;
    top:auto;
  }
  .process-showcase .room-visual{
    min-height:420px;
  }
  .process-node{
    grid-template-columns:64px 1fr;
  }
  .process-output{
    grid-column:2;
  }
}

@media (max-width:860px){
  .process-node{
    grid-template-columns:1fr;
  }
  .premium-process::before{
    display:none;
  }
  .process-output{
    grid-column:auto;
  }
  .process-body ul{
    grid-template-columns:1fr;
  }
  .process-control-strip{
    grid-template-columns:1fr;
  }
  .process-showcase-card{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    margin:0;
    
  }
}

@media (max-width:560px){
  .process-showcase .room-visual{
    min-height:300px;
  }
  .process-node{
    padding:18px;
  }
}


/* =========================
   V14 navigation, image fit, manufacturing process redesign
   ========================= */

/* Navigation underline hover / active effect */
.main-nav{
  gap:14px;
}

.nav-item{
  position:relative;
}

.nav-link,
.start-pill{
  position:relative;
  min-height:44px;
  padding:0 8px;
  
  
}

.nav-link::after,
.start-pill::after,
.dropdown a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-2px;
  height:2px;
  
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .24s ease;
}

.nav-link:hover::after,
.nav-link.active::after,
.start-pill:hover::after,
.start-pill.active::after{
  transform:scaleX(1);
}

.start-pill{
  
  padding:0 6px;
  
}

.dropdown{
  
  padding:14px;
}

.dropdown a{
  position:relative;
  padding:12px 10px;
  
  
}

.dropdown a::after{
  bottom:6px;
}

.dropdown a:hover::after,
.dropdown a.active::after{
  transform:scaleX(1);
}

/* Make all images fill their modules adaptively */
img{
  max-width:100%;
  display:block;
}

.visual-card,
.project-card-media,
.carousel-visual,
.process-showcase,
.process-overview-panel,
.after-upload-card,
.material-card,
.process-visual-card,
.project-hero-slider,
.summary-tile,
.room-visual,
.style-card{
  overflow:hidden;
}

.project-card-media img,
.carousel-visual img,
.process-visual-card img,
.visual-card img,
.after-upload-card img,
.project-hero-slider img,
.summary-tile img,
.room-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.room-visual{
  width:100%;
  background-size:cover !important;
  background-position:center center !important;
}

.project-card-media .room-visual,
.process-visual-card .room-visual,
.carousel-visual .room-visual,
.visual-card .room-visual,
.after-upload-card .room-visual{
  min-height:100%;
}

.project-card-media,
.carousel-visual,
.process-visual-card,
.visual-card{
  align-self:stretch;
}

/* Manufacturing process module redesign */
.manufacturing-process-section{
  position:relative;
  overflow:hidden;
}

.manufacturing-process-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  
}

.manufacturing-process-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  align-items:start;
}

.process-overview-panel{
  position:sticky;
  top:110px;
  
  
  border:1px solid var(--line);
  
}

.process-overview-panel .room-visual{
  min-height:560px;
}

.process-overview-copy{
  padding:26px 26px 28px;
}

.overview-kicker{
  display:block;
  margin-bottom:10px;
  
  font-size:12px;
  
  text-transform:uppercase;
  font-weight:700;
}

.process-overview-copy h3{
  margin:0 0 10px;
  
  
  font-size:40px;
  line-height:.98;
  
}

.process-overview-copy p{
  margin:0;
  
  line-height:1.7;
}

.overview-points{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:20px;
}

.overview-points div{
  padding:14px 12px;
  border:1px solid var(--line);
  
  
}

.overview-points strong{
  display:block;
  margin-bottom:6px;
  
  
  font-size:30px;
  line-height:1;
}

.overview-points span{
  display:block;
  
  font-size:12px;
  line-height:1.45;
}

.process-step-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}

.step-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:22px;
  
  border:1px solid var(--line);
  
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}

.step-card:hover{
  transform:translateY(-4px);
}

.step-top{
  display:grid;
  grid-template-columns:60px 1fr;
  gap:16px;
  align-items:start;
  margin-bottom:12px;
}

.step-no{
  width:60px;
  height:60px;
  display:grid;
  place-items:center;
  
  
  
  font-weight:800;
  
}

.step-label{
  display:inline-flex;
  margin-bottom:6px;
  
  font-size:11px;
  
  text-transform:uppercase;
  font-weight:800;
}

.step-card h3{
  margin:0;
  
  
  font-size:34px;
  line-height:.98;
  
}

.step-card p{
  margin:0 0 14px;
  
  font-size:14px;
  line-height:1.65;
}

.step-card ul{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  list-style:none;
  padding:0;
  margin:0 0 16px;
}

.step-card li{
  padding:10px 12px;
  
  border:1px solid var(--line);
  
  
  font-size:13px;
  line-height:1.4;
  text-align:left;
}

.step-output{
  margin-top:auto;
  padding-top:14px;
  border-top:1px solid var(--line);
}

.step-output span{
  display:block;
  margin-bottom:8px;
  
  font-size:11px;
  
  text-transform:uppercase;
}

.step-output strong{
  display:block;
  
  
  font-size:26px;
  line-height:1;
}

@media (max-width:1260px){
  .manufacturing-process-grid{
    grid-template-columns:1fr;
  }
  .process-overview-panel{
    position:relative;
    top:auto;
  }
}

@media (max-width:860px){
  .main-nav{
    gap:8px;
  }
  .nav-link::after,
  .start-pill::after{
    bottom:6px;
  }
  .dropdown a::after{
    bottom:4px;
  }
  .process-step-grid,
  .overview-points{
    grid-template-columns:1fr;
  }
  .process-overview-panel .room-visual{
    min-height:360px;
  }
}

@media (max-width:560px){
  .step-top{
    grid-template-columns:52px 1fr;
  }
  .step-no{
    width:52px;
    height:52px;
  }
  .step-card{
    padding:18px;
  }
}


/* =========================
   V15 form contact and upload refinement
   ========================= */
.upload-single{
  width:100%;
  min-height:170px;
  border-style:dashed;
  border-width:1.5px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  
}

.upload-single span{
  font-size:34px;
}

.upload-single input{
  max-width:520px;
  margin-inline:auto;
}

.upload-single small{
  max-width:680px;
  margin-inline:auto;
}

.contact-method-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.field select + input,
.field select{
  cursor:pointer;
}

.smart-form .field select:focus,
.smart-form .field input:focus,
.smart-form .field textarea:focus{
  
}

@media (max-width:860px){
  .contact-method-grid{
    grid-template-columns:1fr;
  }
  .upload-single{
    min-height:150px;
  }
}


/* =========================
   V16 homepage spacing, Home menu, form polish
   ========================= */

/* Home menu spacing after adding Home */
.main-nav{
  gap:18px;
}

.home-link

/* Homepage spacing refinement */
.page-index .hero-inner{
  min-height:100vh;
  padding-top:132px;
  padding-bottom:0;
  justify-content:flex-end;
}

.page-index .hero-copy{
  max-width:780px;
  width:min(780px,100%);
  margin-bottom:clamp(46px,6.4vh,72px);
}

.page-index .kicker{
  margin-bottom:16px;
}

.page-index .hero-title{
  max-width:760px;
  margin-bottom:18px;
  font-size:clamp(58px,7.1vw,90px);
}

.page-index .hero-copy p{
  max-width:640px;
  margin:0;
}

.page-index .hero-actions{
  margin-top:26px;
}

.page-index .trust-strip{
  padding-top:28px;
  padding-bottom:30px;
}

.page-index .trust-item{
  min-height:84px;
}

.page-index .trust-item strong{
  margin-bottom:4px;
}

@media (min-width:1261px){
  .page-index .hero-copy{
    transform:translateY(4px);
  }
}

@media (max-width:900px){
  .page-index .hero-inner{
    padding-top:116px;
  }

  .page-index .hero-copy{
    margin-bottom:38px;
  }

  .page-index .trust-strip{
    padding-top:0;
    padding-bottom:0;
  }
}

/* Stronger premium form style */
.smart-form,
.form-card.smart-form,
.woo-panel.smart-form{
  
  border:1px solid var(--line);
  
  
}

.smart-form .form-section-block{
  padding:34px 38px;
  border-bottom:1px solid var(--line);
}

.form-section-title{
  margin-bottom:24px;
}

.form-section-title>span{
  width:50px;
  height:50px;
  
  
}

.form-section-title h3{
  font-size:38px;
}

.form-section-title p{
  max-width:760px;
  line-height:1.6;
}

.form-grid{
  gap:20px;
}

.field label,
.field span{
  display:block;
  margin-bottom:10px;
  font-size:13px;
  
  text-transform:uppercase;
  
}

.smart-form input,
.smart-form select,
.smart-form textarea,
.form-card input,
.form-card select,
.form-card textarea{
  min-height:56px;
  
  border:1px solid var(--line);
  
  
}

.smart-form textarea,
.form-card textarea{
  min-height:138px;
}

.smart-form input:focus,
.smart-form select:focus,
.smart-form textarea:focus,
.form-card input:focus,
.form-card select:focus,
.form-card textarea:focus{
}

/* Make contact method + contact info feel like one logical group */
.contact-method-grid,
.smart-form .field:has(select) + .field{
  position:relative;
}

.contact-method-grid{
  padding:18px;
  border:1px solid var(--line);
  
  
}

/* Choice card visual upgrade */
.choice-grid{
  gap:16px;
}

.choice-card{
  min-height:126px;
  padding:20px 18px;
  
  border:1px solid var(--line);
  
  overflow:hidden;
}

.choice-card::before{
  content:"";
  position:absolute;
  inset:0;
  
  opacity:0;
  transition:opacity .22s ease;
  pointer-events:none;
}

.choice-card:hover::before,
.choice-card:has(input:checked)::before{
  opacity:1;
}

.choice-card b{
  font-size:30px;
}

.choice-card small{
  line-height:1.5;
}

.choice-card:has(input:checked){
}

.upload-single{
  min-height:190px;
}

.upload-single span{
  font-size:38px;
}

.upload-summary{
  display:block;
  margin-top:10px;
  
  font-style:normal;
  font-weight:700;
}

/* Submit row refinement */
.form-submit-row{
  padding:30px 38px 34px;
  
}

.form-submit-row .btn{
  min-width:240px;
  height:56px;
}

.form-submit-row p{
  line-height:1.6;
}

.deposit-form .payment-actions{
  align-items:center;
}

/* Responsive */
@media (max-width:1260px){
  .main-nav{
    gap:12px;
  }

  .smart-form .form-section-block{
    padding:30px 28px;
  }
}

@media (max-width:860px){
  .main-nav{
    gap:8px;
  }

  .nav-link,
  .start-pill{
    padding:8px 4px;
  }

  .page-index .hero-title{
    font-size:clamp(48px,12vw,58px);
  }

  .smart-form .form-section-block,
  .form-submit-row{
    padding-left:22px;
    padding-right:22px;
  }

  .form-section-title h3{
    font-size:32px;
  }

  .choice-card{
    min-height:108px;
  }
}

@media (max-width:560px){
  .form-section-title>span{
    
  }

  .upload-single{
    min-height:165px;
  }
}


/* =========================
   V17 responsive + mobile menu + homepage spacing repair
   ========================= */

/* Overall adaptive safety */
html, body{
  overflow-x:hidden;
}

.container,
.footer-grid,
.hero-inner{
  max-width:var(--max);
}

img,
.room-visual,
.project-card-media,
.carousel-visual,
.hero-media,
.visual-card{
  min-width:0;
}

.section{
  overflow:hidden;
}

/* Homepage: less top gap, keep bottom data away from screen edge */
.page-index .hero-inner{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:stretch;
  min-height:100vh;
  padding-top:clamp(96px,11vh,124px);
  padding-bottom:32px;
  gap:34px;
}

.page-index .hero-copy{
  margin-bottom:0;
  padding-top:0;
  max-width:780px;
}

.page-index .kicker{
  margin-bottom:12px;
}

.page-index .hero-title{
  margin-bottom:16px;
}

.page-index .hero-actions{
  margin-top:22px;
}

.page-index .trust-strip{
  width:100%;
  max-width:100%;
  margin:0;
  padding:24px 28px;
  
  align-self:stretch;
  
}

.page-index .trust-item{
  min-height:78px;
}

/* Mobile submenu toggle generated by JS */
.submenu-toggle{
  display:none;
  width:34px;
  height:34px;
  border:0;
  
  
  
  font-size:20px;
  line-height:1;
  align-items:center;
  justify-content:center;
  transition:background .22s ease, transform .22s ease;
}

.nav-item.submenu-open .submenu-toggle{
  transform:rotate(45deg);
}

/* Tablet layout cleanup */
@media (max-width:1260px){
  .container,
  .footer-grid,
  .hero-inner{
    width:min(var(--max), calc(100% - 40px));
  }

  .main-nav{
    gap:10px;
  }

  .nav-link,
  .start-pill{
    font-size:12px;
  }

  .cards-5,
  .cards-6,
  .services-grid,
  .style-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .project-gallery,
  .control-grid,
  .process-visual-grid,
  .stat-grid,
  .woo-logic-grid,
  .process-step-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .manufacturing-process-grid,
  .drawing-layout,
  .consultation-layout,
  .detail-hero-grid,
  .detail-split,
  .woo-layout,
  .project-carousel .carousel-slide{
    grid-template-columns:1fr;
  }

  .process-overview-panel{
    position:relative;
    top:auto;
  }

  .page-index .hero-inner{
    padding-top:108px;
  }

  .page-index .trust-strip{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }

  .page-index .trust-item{
    padding-left:18px;
    padding-right:18px;
  }

  .page-index .trust-item:first-child{
    padding-left:0;
  }
}

/* Main mobile navigation */
@media (max-width:920px){
  .site-header{
    height:76px;
    padding-left:18px;
    padding-right:18px;
  }

  .brand{
    font-size:20px;
    
  }

  .nav-toggle{
    display:block;
    position:relative;
    z-index:90;
  }

  .main-nav{
    display:none;
  }

  .site-header.open .main-nav{
    display:block;
    position:absolute;
    top:76px;
    left:14px;
    right:14px;
    max-height:calc(100vh - 94px);
    overflow:auto;
    padding:16px 18px 18px;
    
    
    border:1px solid var(--line);
  backdrop-filter:blur(8px);
  }

  .site-header.open .main-nav::-webkit-scrollbar{
    width:4px;
  }

  .site-header.open .nav-item{
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    border-bottom:1px solid var(--line);
    padding:4px 0;
  }

  .site-header.open .nav-link,
  .site-header.open .start-pill,
  .site-header.open .home-link{
    min-height:46px;
    justify-content:flex-start;
    padding:0;
    font-size:15px;
  }

  .site-header.open .home-link,
  .site-header.open .start-pill{
    display:flex;
    border-bottom:1px solid var(--line);
  }

  .submenu-toggle{
    display:flex;
  }

  .site-header.open .dropdown{
    display:none;
    position:static;
    grid-column:1 / -1;
    min-width:0;
    padding:0 0 10px 14px;
    margin:0;
    border:0;
    
    
    
  }

  .site-header.open .nav-item.submenu-open .dropdown{
    display:grid;
    gap:2px;
  }

  .site-header.open .dropdown a{
    min-height:38px;
    display:flex;
    align-items:center;
    padding:0;
    
    font-size:14px;
  }

  .site-header.open .dropdown a::after{
    bottom:6px;
    left:0;
    right:auto;
    width:48px;
  }

  .nav-link::after,
  .start-pill::after{
    bottom:4px;
  }
}

/* Phone layout: one column and better spacing */
@media (max-width:760px){
  .container,
  .footer-grid,
  .hero-inner{
    width:min(var(--max), calc(100% - 28px));
  }

  .section{
    padding:64px 0;
  }

  .section.compact{
    padding:42px 0;
  }

  .section-head{
    gap:14px;
    margin-bottom:24px;
  }

  .section-title{
    font-size:clamp(38px,10vw,46px);
  }

  .page-title{
    font-size:clamp(42px,12vw,54px);
  }

  .page-hero{
    min-height:100%;
    padding:120px 0 58px;
  }

  .page-index .hero-inner{
    min-height:100svh;
    padding-top:92px;
    padding-bottom:24px;
    gap:26px;
  }

  .page-index .hero-copy{
    max-width:100%;
  }

  .page-index .hero-title{
    font-size:clamp(44px,13vw,58px);
    max-width:100%;
  }

  .page-index .hero-copy p{
    font-size:16px;
    line-height:1.65;
  }

  .page-index .hero-actions{
    gap:12px;
  }

  .page-index .hero-actions .btn{
    width:100%;
  }

  .page-index .hero-mini-note{
    width:100%;
  }

  .page-index .trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:10px 16px 14px;
    gap:0;
  }

  .page-index .trust-item{
    min-height:76px;
    padding:14px 12px;
    border-left:0;
    border-top:1px solid var(--line);
  }

  .page-index .trust-item:nth-child(1),
  .page-index .trust-item:nth-child(2){
    border-top:0;
  }

  .page-index .trust-item strong{
    font-size:34px;
  }

  .page-index .trust-item span{
    font-size:12px;
    line-height:1.35;
  }

  .grid,
  .cols-2,
  .cols-3,
  .cols-4,
  .project-gallery,
  .control-grid,
  .process-visual-grid,
  .stat-grid,
  .woo-logic-grid,
  .project-summary-grid,
  .step-line,
  .solution-flow,
  .form-grid,
  .cards-5,
  .cards-6,
  .services-grid,
  .style-card-grid,
  .upload-grid,
  .process-step-grid,
  .overview-points,
  .check-grid,
  .contact-method-grid{
    grid-template-columns:1fr !important;
  }

  .project-card-media .room-visual,
  .stage-media .room-visual,
  .process-visual-card .room-visual,
  .process-overview-panel .room-visual,
  .after-upload-card .room-visual{
    min-height:260px;
  }

  .project-card-body,
  .card.pad,
  .detail-panel,
  .summary-tile,
  .step-card,
  .smart-form .form-section-block,
  .form-submit-row{
    padding-left:20px;
    padding-right:20px;
  }

  .smart-form .form-section-block{
    padding-top:24px;
    padding-bottom:24px;
  }

  .form-section-title{
    grid-template-columns:1fr;
    gap:12px;
  }

  .choice-card{
    min-height:94px;
  }

  .form-submit-row{
    flex-direction:column;
    align-items:flex-start;
  }

  .form-submit-row .btn{
    width:100%;
  }

  .footer-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:420px){
  .brand{
    font-size:18px;
    
  }

  .page-index .trust-strip{
    grid-template-columns:1fr;
  }

  .page-index .trust-item{
    border-top:1px solid var(--line);
    min-height:66px;
  }

  .page-index .trust-item:first-child{
    border-top:0;
  }
}

.smart-form{
  position:relative;
  overflow:hidden;
}

.smart-form::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  
  z-index:2;
}

.smart-form .form-section-block{
  position:relative;
}

.smart-form .form-section-block:not(:last-of-type)::after{
  content:"";
  position:absolute;
  left:38px;
  right:38px;
  bottom:0;
  height:1px;
  
}

.form-section-title{
  align-items:center;
}

.form-section-title p{
  
}

.field{
  min-width:0;
}

.smart-form input,
.smart-form select,
.smart-form textarea,
.form-card input,
.form-card select,
.form-card textarea{
  width:100%;
  
  font-size:15px;
}

.smart-form select,
.form-card select{
  appearance:auto;
}

.smart-form input:hover,
.smart-form select:hover,
.smart-form textarea:hover,
.form-card input:hover,
.form-card select:hover,
.form-card textarea:hover{
}

.contact-method-grid{
  position:relative;
  
  
}

.contact-method-grid::before{
  content:"Preferred contact first";
  position:absolute;
  top:-10px;
  left:18px;
  padding:2px 9px;
  
  
  
  font-size:11px;
  line-height:1.4;
  font-weight:800;
  
  text-transform:uppercase;
  border:1px solid var(--line);
}

/* Visible upload file frame */
.upload-box{
  position:relative;
  min-height:230px;
  padding:30px 26px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-align:center;
  border:1.5px dashed var(--line);
  
  
  
  cursor:pointer;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease;
}

.upload-box:hover{
  transform:translateY(-3px);
}

.upload-box input[type="file"]{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
  z-index:3;
}

.upload-icon{
  width:62px;
  height:62px;
  
  display:grid;
  place-items:center;
  
  
  font-size:32px;
  line-height:1;
  font-weight:800;
  
}

.upload-box strong{
  display:block;
  margin-top:4px;
  
  
  font-size:40px;
  line-height:1;
  
}

.upload-box em{
  display:block;
  max-width:620px;
  
  font-style:normal;
  font-size:15px;
  line-height:1.55;
}

.upload-box small{
  display:inline-flex;
  justify-content:center;
  max-width:720px;
  padding:8px 12px;
  
  
  
  font-size:12px;
  line-height:1.45;
}

.upload-summary{
  position:relative;
  z-index:4;
  display:inline-flex;
  margin-top:8px;
  padding:7px 12px;
  
  
  
  font-style:normal;
  font-size:12px;
  font-weight:800;
}

.choice-card{
  isolation:isolate;
}

.choice-card input{
  z-index:2;
}

.choice-card b,
.choice-card small{
  position:relative;
  z-index:1;
}

.form-submit-row{
  min-height:96px;
}

.form-submit-row p{
  
}

@media (max-width:760px){
  .smart-form .form-section-block:not(:last-of-type)::after{
    left:20px;
    right:20px;
  }

  .contact-method-grid{
    padding-top:22px;
  }

  .upload-box{
    min-height:190px;
    padding:28px 18px;
  }

  .upload-icon{
    width:54px;
    height:54px;
    font-size:28px;
  }

  .upload-box strong{
    font-size:34px;
  }
}

@media (max-width:420px){
  .upload-box{
    min-height:176px;
  }

  .upload-box strong{
    font-size:30px;
  }
}

/* V19 dropdown stability + form choice controls */
@media (min-width:921px){
  .main-nav .nav-item.has-dropdown{position:relative;padding-bottom:18px;margin-bottom:-18px}
  .main-nav .nav-item.has-dropdown::before{content:"";position:absolute;left:-18px;right:-18px;top:100%;height:24px;z-index:79}
  .main-nav .dropdown{top:calc(100% - 2px);margin-top:0;display:block;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:80}
  .main-nav .nav-item.has-dropdown:hover .dropdown,
  .main-nav .nav-item.has-dropdown:focus-within .dropdown,
  .main-nav .nav-item.has-dropdown.dropdown-open .dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .dropdown a{white-space:nowrap}
}
@media (max-width:920px){
  .site-header.open .dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:none}
}
.choice-card,.style-card{position:relative;min-height:128px;padding:22px 20px;border:1px solid var(--line);}
.choice-card::after{content:"";position:absolute;inset:0;border:1px solid var(--line);pointer-events:none;transition:border-color .22s ease,box-shadow .22s ease}
.choice-card:hover{transform:translateY(-4px);border-}
.choice-card input[type="radio"],.choice-card input[type="checkbox"],.style-card input[type="radio"],.style-card input[type="checkbox"]{position:absolute;top:16px;right:16px;width:24px;height:24px;margin:0;opacity:1;appearance:none;-webkit-appearance:none;border:1.5px solid var(--line);z-index:4;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.choice-card input[type="checkbox"],.style-card input[type="checkbox"]{}
.choice-card input[type="radio"]:checked,.style-card input[type="radio"]:checked{border-}
.choice-card input[type="checkbox"]:checked,.style-card input[type="checkbox"]:checked{border-}
.choice-card input[type="checkbox"]:checked::after,.style-card input[type="checkbox"]:checked::after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;font-size:16px;font-weight:900;line-height:1}
.choice-card input:focus-visible,.style-card input:focus-visible{outline:3px solid rgba(154,122,74,.2);outline-offset:3px}
.choice-card.is-selected,.choice-card:has(input:checked){border-}
.choice-card.is-selected::after,.choice-card:has(input:checked)::after{border-}
.choice-card.is-selected::before,.choice-card:has(input:checked)::before{opacity:1}
.choice-card b{padding-right:34px;font-size:31px;}
.choice-card small{max-width:92%;}
.services-grid .choice-card{min-height:116px}
.services-grid .choice-card b{font-size:28px}
.choice-grid{gap:18px}
.form-section-block .choice-grid + .form-grid,.form-section-block .style-card-grid + .form-grid{margin-top:22px}
.style-card{min-height:150px;border:1px solid var(--line);}
.style-card::after{content:"";position:absolute;inset:0;pointer-events:none}
.style-card span{z-index:2;font-size:18px}
.style-card.is-selected,.style-card:has(input:checked){outline:2px solid var(--gold-2);outline-offset:4px;}
.check-card{position:relative;padding-left:56px}
.check-card input[type="checkbox"],.check-card input[type="radio"]{position:absolute;left:20px;top:22px;width:22px;height:22px;accent-}
@media (max-width:760px){
  .choice-card{min-height:104px;padding:20px 18px}
  .choice-card b{font-size:28px}
  .choice-card small{max-width:100%}
  .choice-grid{gap:14px}
  .style-card{min-height:132px}
}


/* =========================
   V20 normal radio / checkbox option style
   Replace large card controls with normal, clear options while keeping premium polish.
   ========================= */

/* Shared option groups */
.choice-grid,
.style-card-grid,
.check-grid,
.woo-products{
  gap:12px;
}

/* Normal option rows */
.choice-card,
.style-card,
.check-card,
.woo-product{
  position:relative !important;
  min-height:auto !important;
  display:grid !important;
  grid-template-columns:22px 1fr !important;
  align-items:start !important;
  column-gap:12px !important;
  row-gap:4px !important;
  padding:14px 16px !important;
  
  border:1px solid var(--line);
  
  
  
  overflow:hidden !important;
  cursor:pointer !important;
  transform:none !important;
}

/* Remove decorative image-card overlays for option fields */
.choice-card::before,
.choice-card::after,
.style-card::before,
.style-card::after,
.check-card::before,
.check-card::after,
.woo-product::before,
.woo-product::after{
  display:none !important;
  content:none !important;
}

/* Restore native radio / checkbox appearance */
.choice-card input[type="radio"],
.choice-card input[type="checkbox"],
.style-card input[type="radio"],
.style-card input[type="checkbox"],
.check-card input[type="radio"],
.check-card input[type="checkbox"],
.woo-product input[type="radio"],
.woo-product input[type="checkbox"]{
  position:relative !important;
  inset:auto !important;
  top:auto !important;
  right:auto !important;
  left:auto !important;
  width:18px !important;
  height:18px !important;
  min-height:18px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  opacity:1 !important;
  appearance:auto !important;
  -webkit-appearance:auto !important;
  border:0 !important;
  
  
  
  cursor:pointer !important;
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  z-index:2 !important;
}

.choice-card input[type="checkbox"]:checked::after,
.style-card input[type="checkbox"]:checked::after,
.check-card input[type="checkbox"]:checked::after,
.woo-product input[type="checkbox"]:checked::after{
  display:none !important;
  content:none !important;
}

/* Text layout inside options */
.choice-card b,
.choice-card small,
.style-card span,
.check-card,
.woo-product span,
.woo-product strong,
.woo-product small{
  position:relative !important;
  z-index:1 !important;
  grid-column:2 !important;
}

.choice-card b,
.woo-product strong,
.style-card span{
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  
  
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
  
}

.choice-card small,
.woo-product small{
  display:block !important;
  max-width:none !important;
  margin:2px 0 0 !important;
  
  font-size:13px !important;
  line-height:1.45 !important;
}

/* Woo deposit product text */
.woo-product span{
  display:block !important;
  margin:0 0 2px !important;
  
  font-size:11px !important;
  
  text-transform:uppercase !important;
  font-weight:800 !important;
}

.woo-product strong{
  margin-bottom:3px !important;
}

/* Hover and selected states */
.choice-card:hover,
.style-card:hover,
.check-card:hover,
.woo-product:hover{
}

.choice-card.is-selected,
.choice-card:has(input:checked),
.style-card.is-selected,
.style-card:has(input:checked),
.check-card:has(input:checked),
.woo-product:has(input:checked){
}

/* Group layout: keep compact and readable */
.cards-5,
.cards-6,
.services-grid,
.style-card-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.services-grid{
  align-items:stretch;
}

.woo-products{
  display:grid !important;
  grid-template-columns:1fr !important;
}

/* Older inline checkbox labels */
.check-card{
  padding-left:16px !important;
}

.check-card input{
  align-self:start !important;
}

/* Mobile one-column options */
@media (max-width:760px){
  .cards-5,
  .cards-6,
  .services-grid,
  .style-card-grid{
    grid-template-columns:1fr !important;
  }

  .choice-card,
  .style-card,
  .check-card,
  .woo-product{
    padding:13px 14px !important;
  }

  .choice-card b,
  .woo-product strong,
  .style-card span{
    font-size:15px !important;
  }
}


/* =========================
   V21 Upload Your Drawing page cleanup
   ========================= */

.drawing-layout-v21{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:34px;
  align-items:start;
}

.drawing-form-panel{
  min-width:0;
}

.drawing-info-panel{
  min-width:0;
  overflow:hidden;
  
  
  border:1px solid var(--line);
  
}

.drawing-info-media{
  height:300px;
  overflow:hidden;
  
}

.drawing-info-media .room-visual{
  width:100%;
  height:100%;
  min-height:300px;
  
  background-size:cover !important;
  background-position:center !important;
}

.drawing-info-copy{
  padding:32px 34px 34px;
  
}

.drawing-info-copy .eyebrow{
  
  margin-bottom:14px;
}

.drawing-info-copy h3{
  margin:0 0 12px;
  
  
  font-size:44px;
  line-height:.98;
  
}

.drawing-info-intro{
  margin:0 0 22px;
  
  font-size:15px;
  line-height:1.72;
}

.drawing-steps{
  display:grid;
  gap:12px;
  list-style:none;
  padding:0;
  margin:0;
}

.drawing-steps li{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:14px;
  align-items:start;
  padding:15px 0;
  border-top:1px solid var(--line);
}

.drawing-steps li:first-child{
  border-top:0;
}

.drawing-steps li>span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  
  
  
  font-size:13px;
  font-weight:800;
  
}

.drawing-steps b{
  display:block;
  
  font-size:15px;
  line-height:1.35;
  margin-bottom:4px;
}

.drawing-steps p{
  margin:0;
  
  font-size:13px;
  line-height:1.5;
}

.page-upload-your-drawing .upload-box{
  min-height:210px;
}

.page-upload-your-drawing .form-submit-row{
  align-items:flex-start;
}

.page-upload-your-drawing .form-submit-row p{
  max-width:620px;
}

@media (max-width:1260px){
  .drawing-layout-v21{
    grid-template-columns:1fr;
  }

  .drawing-info-panel{
    display:grid;
    grid-template-columns:.88fr 1.12fr;
  }

  .drawing-info-media{
    height:auto;
    min-height:100%;
  }

  .drawing-info-media .room-visual{
    min-height:100%;
  }
}

@media (max-width:760px){
  .drawing-layout-v21{
    gap:24px;
  }

  .drawing-info-panel{
    grid-template-columns:1fr;
    
  }

  .drawing-info-media{
    height:240px;
  }

  .drawing-info-media .room-visual{
    min-height:240px;
  }

  .drawing-info-copy{
    padding:26px 22px 28px;
  }

  .drawing-info-copy h3{
    font-size:36px;
  }

  .drawing-steps li{
    grid-template-columns:36px 1fr;
    gap:12px;
  }

  .drawing-steps li>span{
    width:36px;
    height:36px;
    font-size:12px;
  }

  .page-upload-your-drawing .upload-box{
    min-height:185px;
  }
}


/* =========================
   V22 Deposit Payment page repair
   ========================= */

.deposit-section-v22{
  overflow:visible;
}

.deposit-layout-v22{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
  gap:34px;
  align-items:start;
}

.deposit-form-panel{
  min-width:0;
}

.deposit-form-intro{
  padding:34px 38px 26px;
  border-bottom:1px solid var(--line);
  
}

.deposit-form-intro h2{
  margin:0 0 10px;
  
  font-size:46px;
  line-height:.98;
  
  
}

.deposit-form-intro p{
  max-width:760px;
  margin:0;
  
  line-height:1.7;
}

.deposit-contact-grid{
  margin-top:20px;
}

.deposit-product-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
}

.deposit-option{
  display:grid !important;
  grid-template-columns:22px 1fr !important;
  gap:14px !important;
  align-items:start !important;
  padding:17px 18px !important;
  
  border:1px solid var(--line);
  
  
  cursor:pointer;
}

.deposit-option input[type="radio"]{
  width:18px !important;
  height:18px !important;
  margin-top:4px !important;
}

.deposit-option>div{
  min-width:0;
}

.deposit-option span{
  display:block !important;
  margin-bottom:4px !important;
  
  font-size:11px !important;
  
  text-transform:uppercase !important;
  font-weight:800 !important;
}

.deposit-option strong{
  display:block !important;
  margin-bottom:4px !important;
  
  
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}

.deposit-option small{
  display:block !important;
  
  font-size:13px !important;
  line-height:1.5 !important;
}

.deposit-option:hover,
.deposit-option:has(input:checked){
}

.deposit-note-box{
  margin:0 38px 28px;
  padding:18px 20px;
  
  border:1px solid var(--line);
  
}

.deposit-note-box strong{
  display:block;
  margin-bottom:6px;
  
}

.deposit-note-box p{
  margin:0;
  
  line-height:1.65;
}

.deposit-actions{
  gap:14px;
  justify-content:flex-start;
}

.deposit-actions .btn{
  min-width:240px;
}

.deposit-summary-panel{
  position:sticky;
  top:112px;
  min-width:0;
  overflow:hidden;
  
  
  border:1px solid var(--line);
  
  
}

.summary-top{
  padding:30px 30px 22px;
  border-bottom:1px solid var(--line);
  
}

.summary-top h2{
  margin:0 0 8px;
  
  
  font-size:44px;
  line-height:.98;
  
}

.summary-top p{
  margin:0;
  
  line-height:1.6;
}

.summary-card{
  padding:10px 30px 8px;
}

.deposit-summary-panel .woo-row{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  padding:17px 0;
  border-bottom:1px solid var(--line);
}

.deposit-summary-panel .woo-row span{
  
  font-size:12px;
  
  text-transform:uppercase;
  font-weight:800;
}

.deposit-summary-panel .woo-row strong{
  
  font-size:17px;
  line-height:1.35;
}

.deposit-summary-panel .woo-row.total strong{
  
  
  font-size:38px;
  line-height:1;
}

.checkout-url-box{
  margin:20px 30px 0;
  padding:16px;
  
  
  border:1px solid var(--line);
}

.checkout-url-box span{
  display:block;
  margin-bottom:8px;
  
  font-size:11px;
  
  text-transform:uppercase;
  font-weight:800;
}

.checkout-url-box code{
  display:block;
  white-space:normal;
  word-break:break-word;
  
  font-size:12px;
  line-height:1.55;
}

.deposit-summary-panel #wooCheckoutBtn{
  width:calc(100% - 60px);
  margin:22px 30px 0;
}

.summary-small{
  margin:14px 30px 30px;
  
  font-size:12px;
  line-height:1.55;
}

.deposit-logic-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.deposit-logic-card{
  overflow:hidden;
  
  
  border:1px solid var(--line);
  
}

.deposit-logic-card .room-visual{
  min-height:220px;
  
}

.deposit-logic-card>div:last-child{
  padding:22px;
}

.deposit-logic-card h3{
  margin:0 0 8px;
  
  font-size:32px;
  line-height:1;
  
}

.deposit-logic-card p{
  margin:0;
  
  line-height:1.6;
}

@media (max-width:1260px){
  .deposit-layout-v22{
    grid-template-columns:1fr;
  }

  .deposit-summary-panel{
    position:relative;
    top:auto;
  }

  .deposit-logic-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:860px){
  .deposit-form-intro{
    padding:28px 22px 22px;
  }

  .deposit-form-intro h2{
    font-size:38px;
  }

  .deposit-note-box{
    margin-left:22px;
    margin-right:22px;
  }

  .deposit-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .deposit-actions .btn{
    width:100%;
  }

  .deposit-summary-panel #wooCheckoutBtn{
    width:calc(100% - 44px);
    margin-left:22px;
    margin-right:22px;
  }

  .summary-top,
  .summary-card{
    padding-left:22px;
    padding-right:22px;
  }

  .checkout-url-box{
    margin-left:22px;
    margin-right:22px;
  }

  .summary-small{
    margin-left:22px;
    margin-right:22px;
  }

  .deposit-logic-grid{
    grid-template-columns:1fr;
  }
}


/* =========================
   V23 floating contact box
   ========================= */
.floating-contact{
  position:fixed;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  z-index:120;
  display:grid;
  gap:10px;
  
}

.float-main,
.float-link{
  width:54px;
  min-height:54px;
  display:grid;
  place-items:center;
  
  border:1px solid var(--line);
  
  
  text-decoration:none;
  backdrop-filter:blur(8px);
  transition:transform .22s ease,background .22s ease,border-color .22s ease;
}

.float-main{
  cursor:pointer;
  font-weight:900;
  font-size:20px;
}

.float-link{
  position:relative;
  font-size:11px;
  font-weight:800;
  
}

.float-link::before{
  content:attr(data-label);
  position:absolute;
  right:64px;
  top:50%;
  transform:translateY(-50%) translateX(8px);
  opacity:0;
  pointer-events:none;
  white-space:nowrap;
  padding:8px 10px;
  
  
  border:1px solid var(--line);
  
  font-size:12px;
  font-weight:700;
  
  transition:opacity .2s ease,transform .2s ease;
}

.float-link:hover::before{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}

.float-main:hover,
.float-link:hover{
  transform:translateY(-2px);
}

.float-actions{
  display:grid;
  gap:10px;
}

.float-link

.float-link

@media (max-width:760px){
  .floating-contact{
    left:12px;
    right:12px;
    top:auto;
    bottom:14px;
    transform:none;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:8px;
    
    
    border:1px solid var(--line);
  backdrop-filter:blur(8px);
  }

  .float-main{
    display:none;
  }

  .float-actions{
    display:flex;
    gap:8px;
    width:100%;
    justify-content:space-between;
  }

  .float-link{
    width:auto;
    min-height:44px;
    flex:1;
    
    font-size:11px;
  }

  .float-link::before{
    display:none;
  }

  body{
    padding-bottom:74px;
  }
}

/* =========================
   V24 deposit / project list / testimonials / floating icons
   ========================= */

/* Deposit page refined */
.deposit-section-v24{overflow:visible}
.deposit-intro-v24{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.42fr);gap:28px;align-items:end;
  margin-bottom:30px;padding:32px 34px;
  border:1px solid var(--line);
}
.deposit-intro-v24 h2{margin:0 0 10px;font-size:52px;line-height:.96;}
.deposit-intro-v24 p{max-width:820px;margin:0;line-height:1.7}
.deposit-flow-v24{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.deposit-flow-v24 div{padding:16px 14px;border:1px solid var(--line)}
.deposit-flow-v24 b{display:block;margin-bottom:6px;font-size:22px}
.deposit-flow-v24 span{display:block;font-size:12px}
.deposit-layout-v24{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:34px;align-items:start}
.deposit-form-v24{min-width:0;border:1px solid var(--line);overflow:hidden}
.deposit-block-v24{padding:34px 38px;border-bottom:1px solid var(--line)}
.deposit-options-v24{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.deposit-option-v24{display:grid;grid-template-columns:22px 1fr auto;gap:14px;align-items:center;padding:17px 18px;border:1px solid var(--line);cursor:pointer}
.deposit-option-v24 input{width:18px;height:18px;accent-}
.deposit-option-copy span{display:block;margin-bottom:4px;font-size:11px;text-transform:uppercase;font-weight:800}
.deposit-option-copy strong{display:block;margin-bottom:4px;font-size:16px;line-height:1.35}
.deposit-option-copy small{display:block;font-size:13px;line-height:1.5}
.deposit-option-v24>b{font-size:30px;line-height:1;white-space:nowrap}
.deposit-option-v24:hover,.deposit-option-v24:has(input:checked){border-}
.deposit-note-v24{margin:0 38px 28px;padding:18px 20px;border:1px solid var(--line);}
.deposit-note-v24 strong{display:block;margin-bottom:6px;}.deposit-note-v24 p{margin:0;line-height:1.65}
.deposit-actions-v24{gap:14px;justify-content:flex-start}.deposit-actions-v24 .btn{min-width:240px}
.deposit-summary-v24{position:sticky;top:112px;overflow:hidden;border:1px solid var(--line);}
.summary-top-v24{padding:30px 30px 22px;border-bottom:1px solid var(--line);}
.summary-top-v24 h2{margin:0 0 8px;font-size:44px;line-height:.98;}.summary-top-v24 p{margin:0;line-height:1.6}
.summary-rows-v24{padding:10px 30px 8px}.deposit-summary-v24 .woo-row{display:grid;grid-template-columns:1fr;gap:6px;padding:17px 0;border-bottom:1px solid var(--line)}
.deposit-summary-v24 .woo-row span{font-size:12px;text-transform:uppercase;font-weight:800}.deposit-summary-v24 .woo-row strong{font-size:17px;line-height:1.35}
.deposit-summary-v24 .woo-row.total strong{font-size:38px;line-height:1}
.checkout-url-v24{margin:20px 30px 0;padding:16px;border:1px solid var(--line)}
.checkout-url-v24 span{display:block;margin-bottom:8px;font-size:11px;text-transform:uppercase;font-weight:800}.checkout-url-v24 code{display:block;white-space:normal;word-break:break-word;font-size:12px;line-height:1.55}
.deposit-summary-v24 #wooCheckoutBtn{width:calc(100% - 60px);margin:22px 30px 0}.summary-small-v24{margin:14px 30px 30px;font-size:12px;line-height:1.55}
.deposit-logic-grid-v24{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.deposit-logic-card-v24{overflow:hidden;border:1px solid var(--line);}.deposit-logic-card-v24 .room-visual{min-height:220px;}.deposit-logic-card-v24>div:last-child{padding:22px}.deposit-logic-card-v24 h3{margin:0 0 8px;font-size:32px;line-height:1;}.deposit-logic-card-v24 p{margin:0;line-height:1.6}

/* Project list image + text combination */
.projects-visual-v24 .project-gallery{display:grid;grid-template-columns:1fr;gap:24px}
.projects-visual-v24 .project-card{display:grid;grid-template-columns:minmax(360px,.46fr) 1fr;min-height:360px;overflow:hidden;border:1px solid var(--line)}
.projects-visual-v24 .project-card-media{height:100%;min-height:360px}.projects-visual-v24 .project-card-media .room-visual{height:100%;min-height:360px;}
.projects-visual-v24 .project-card-body{padding:34px 38px;display:flex;flex-direction:column;justify-content:center}
.project-insight{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 20px}.project-insight p{margin:0;padding:14px;border:1px solid var(--line);font-size:13px;line-height:1.55}.project-insight b{display:block;margin-bottom:5px;}

/* Testimonials */
.testimonials-v24 .testimonial-feature-v24{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;overflow:hidden;border:1px solid var(--line);margin-bottom:24px}
.testimonial-media-v24 .room-visual{height:100%;min-height:420px;}.testimonial-feature-copy{padding:44px;display:flex;flex-direction:column;justify-content:center}.testimonial-feature-copy span{font-size:12px;text-transform:uppercase;font-weight:800}.testimonial-feature-copy h3{margin:16px 0;font-size:52px;line-height:.95;}.testimonial-feature-copy p{margin:0;line-height:1.7}.testimonial-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.testimonial-tags b{padding:8px 12px;font-size:12px}
.testimonial-grid-v24{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.testimonial-card-v24{position:relative;padding:30px;border:1px solid var(--line)}.quote-mark{position:absolute;right:24px;top:12px;font-size:80px;line-height:1}.testimonial-card-v24 h3{position:relative;margin:0 0 14px;font-size:34px;line-height:1;}.testimonial-card-v24 p{position:relative;line-height:1.65}.testimonial-meta-v24{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.testimonial-meta-v24 strong{display:block;}.testimonial-meta-v24 span{display:block;margin-top:4px;font-size:13px}

/* Floating contact icons */
.float-link{font-size:0}.float-link svg{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.float-main svg{width:24px;height:24px;stroke:#fff}
@media (max-width:1260px){.deposit-intro-v24,.deposit-layout-v24{grid-template-columns:1fr}.deposit-summary-v24{position:relative;top:auto}.deposit-logic-grid-v24{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.projects-visual-v24 .project-card,.testimonials-v24 .testimonial-feature-v24{grid-template-columns:1fr}.projects-visual-v24 .project-card-media,.projects-visual-v24 .project-card-media .room-visual{min-height:260px}.project-insight,.testimonial-grid-v24,.deposit-logic-grid-v24{grid-template-columns:1fr}.testimonial-media-v24 .room-visual{min-height:280px}}
@media (max-width:760px){.deposit-intro-v24{padding:26px 22px}.deposit-intro-v24 h2{font-size:40px}.deposit-flow-v24{grid-template-columns:1fr}.deposit-block-v24{padding:26px 22px}.deposit-option-v24{grid-template-columns:22px 1fr}.deposit-option-v24>b{grid-column:2;font-size:26px}.deposit-note-v24{margin-left:22px;margin-right:22px}.deposit-actions-v24{flex-direction:column;align-items:stretch}.deposit-actions-v24 .btn{width:100%}.deposit-summary-v24 #wooCheckoutBtn{width:calc(100% - 44px);margin-left:22px;margin-right:22px}.summary-top-v24,.summary-rows-v24{padding-left:22px;padding-right:22px}.checkout-url-v24,.summary-small-v24{margin-left:22px;margin-right:22px}.projects-visual-v24 .project-card-body{padding:26px 22px}.testimonial-feature-copy{padding:30px 22px}.testimonial-feature-copy h3{font-size:38px}}


/* =========================
   V25 Resources 企业能力 structure
   ========================= */
.resources-dropdown{
  min-width:310px;
}

.resource-subnav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:34px;
}

.resource-subnav a{
  display:block;
  padding:16px 18px;
  
  
  border:1px solid var(--line);
  
  font-weight:900;
  line-height:1.25;
  
}

.resource-subnav a small{
  display:block;
  margin-top:6px;
  
  font-size:12px;
  font-weight:800;
}

.resource-subnav a

.capability-stats{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.partner-logo-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.partner-logo-grid div{
  min-height:92px;
  display:grid;
  place-items:center;
  
  
  border:1px solid var(--line);
  
  font-weight:900;
  
}

.manufacturing-step-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.manufacturing-step-list article{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:16px;
  padding:22px;
  
  
  border:1px solid var(--line);
}

.manufacturing-step-list b{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  
  
  
  font-weight:900;
}

.manufacturing-step-list h3{
  margin:0 0 8px;
  
  
  font-size:32px;
  line-height:1;
  
}

.manufacturing-step-list p{
  margin:0;
  
  line-height:1.6;
}

.quality-flow-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.quality-flow-grid article{
  padding:26px;
  
  
  border:1px solid var(--line);
  
}

.quality-flow-grid span{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  
  
  
  font-weight:900;
  margin-bottom:18px;
}

.quality-flow-grid h3{
  margin:0 0 10px;
  
  font-size:34px;
  line-height:1;
  
}

.quality-flow-grid p{
  margin:0;
  
  line-height:1.62;
}

.material-category-grid .material-card{
  min-height:180px;
  display:flex;
  align-items:flex-end;
}

@media (max-width:1260px){
  .resource-subnav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .capability-stats,
  .quality-flow-grid,
  .partner-logo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .resource-subnav,
  .capability-stats,
  .manufacturing-step-list,
  .quality-flow-grid,
  .partner-logo-grid{
    grid-template-columns:1fr;
  }

  .resource-subnav a{
    padding:14px 16px;
  }

  .manufacturing-step-list article{
    grid-template-columns:54px 1fr;
    padding:18px;
  }

  .manufacturing-step-list b{
    width:54px;
    height:54px;
  }
}


/* =========================
   V26 Solutions（解决方案）structure
   ========================= */
.solutions-dropdown{
  min-width:310px;
}

.solution-subnav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:34px;
}

.solution-subnav a{
  display:block;
  padding:16px 18px;
  
  
  border:1px solid var(--line);
  
  font-weight:900;
  line-height:1.25;
  
}

.solution-subnav a small{
  display:block;
  margin-top:6px;
  
  font-size:12px;
  font-weight:800;
}

.solution-subnav a

.client-group-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.client-group-grid article,
.pain-grid article,
.team-support-grid article,
.question-solution-grid article{
  padding:24px;
  
  
  border:1px solid var(--line);
  
}

.client-group-grid span{
  display:block;
  
  font-size:12px;
  
  font-weight:900;
  margin-bottom:18px;
}

.client-group-grid h3,
.pain-grid h3,
.team-support-grid h3,
.question-solution-grid h3{
  margin:0 0 10px;
  
  font-size:34px;
  line-height:1;
  
}

.client-group-grid p,
.pain-grid p,
.team-support-grid p,
.question-solution-grid p{
  margin:0;
  
  line-height:1.62;
}

.scale-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.scale-card{
  position:relative;
  padding:30px;
  
  
  border:1px solid var(--line);
  
  overflow:hidden;
}

.scale-card

.scale-no{
  
  font-size:12px;
  
  text-transform:uppercase;
  font-weight:900;
  margin-bottom:18px;
}

.scale-card h3{
  margin:0 0 12px;
  
  
  font-size:38px;
  line-height:1;
  
}

.scale-card ul{
  margin:18px 0 0;
  padding-left:18px;
}

.team-support-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.team-support-grid b{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  
  
  
  margin-bottom:18px;
}

.consultation-cta-panel,
.free-consultation-panel{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);
  gap:28px;
  align-items:start;
  padding:34px;
  
  
  border:1px solid var(--line);
  
}

.consultation-cta-panel h2,
.free-consultation-panel h2{
  margin:8px 0 12px;
  
  font-size:52px;
  line-height:.96;
  
}

.mini-consult-form,
.consultation-mini-form{
  display:grid;
  gap:18px;
}

.mini-consult-form .btn,
.consultation-mini-form .btn{
  justify-self:start;
}

.pain-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.solution-system-list{
  display:grid;
  gap:16px;
}

.solution-system-list article{
  display:grid;
  grid-template-columns:64px 1fr;
  gap:18px;
  padding:24px;
  
  
  border:1px solid var(--line);
}

.solution-system-list b{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  
  
  
  font-weight:900;
}

.solution-system-list h3{
  margin:0 0 8px;
  
  
  font-size:34px;
  line-height:1;
  
}

.solution-system-list p{
  margin:0;
  
  line-height:1.7;
}

.solution-timeline-v26{
  position:relative;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.solution-timeline-v26 article{
  position:relative;
  min-height:260px;
  padding:24px 20px;
  
  
  border:1px solid var(--line);
  
}

.solution-timeline-v26 span{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  
  
  
  font-weight:900;
  margin-bottom:18px;
}

.solution-timeline-v26 h3{
  margin:0 0 14px;
  
  font-size:34px;
  line-height:1;
  
}

.solution-timeline-v26 ul{
  margin:0;
  padding-left:18px;
  
}

.question-solution-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.question-solution-grid article{
}

.question-solution-grid h3 small{
  display:block;
  margin-top:8px;
  
  
  font-size:14px;
  
}

.question-solution-grid p{
  
  margin-top:10px;
}

@media (max-width:1260px){
  .client-group-grid,
  .pain-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .solution-timeline-v26{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .consultation-cta-panel,
  .free-consultation-panel{
    grid-template-columns:1fr;
  }
}

@media (max-width:920px){
  .solution-subnav,
  .scale-grid,
  .team-support-grid,
  .question-solution-grid{
    grid-template-columns:1fr;
  }

  .solution-timeline-v26{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .solution-subnav,
  .client-group-grid,
  .pain-grid,
  .solution-timeline-v26{
    grid-template-columns:1fr;
  }

  .consultation-cta-panel,
  .free-consultation-panel{
    padding:24px 20px;
  }

  .consultation-cta-panel h2,
  .free-consultation-panel h2{
    font-size:40px;
  }

  .solution-system-list article{
    grid-template-columns:54px 1fr;
    padding:18px;
  }

  .solution-system-list b{
    width:54px;
    height:54px;
  }
}


/* =========================
   V27 English visual modules for Solutions pages
   ========================= */

.solution-subnav-v27 a small{
  min-height:30px;
}

.split-visual-section{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:34px;
  align-items:center;
}

.split-visual-section .room-visual{
  min-height:430px;
  
  overflow:hidden;
  
}

.split-visual-section .btn{
  margin-top:24px;
}

.visual-client-grid,
.pain-visual-grid,
.advantage-proof-grid,
.solution-system-visual-list,
.solution-flow-visual-grid,
.question-visual-grid,
.scale-visual-grid,
.advantage-visual-grid{
  display:grid;
  gap:20px;
}

.visual-client-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.visual-client-grid article,
.pain-visual-grid article,
.scale-visual-grid article,
.advantage-visual-grid article,
.advantage-proof-grid article,
.solution-system-visual-list article,
.solution-flow-visual-grid article,
.question-visual-grid article{
  overflow:hidden;
  
  
  border:1px solid var(--line);
  
}

.dark .visual-client-grid article,
.dark .pain-visual-grid article,
.dark .advantage-visual-grid article,
.dark .solution-system-visual-list article,
.dark .question-visual-grid article{
}

.visual-client-grid .room-visual{
  min-height:180px;
  
}

.visual-client-grid article>div:last-child,
.pain-visual-grid article>div:last-child,
.scale-visual-grid article>div:last-child,
.advantage-visual-grid article>div:last-child,
.advantage-proof-grid article>div:last-child,
.solution-system-visual-list article>div:last-child,
.solution-flow-visual-grid article>div:last-child,
.question-visual-grid article>div:last-child{
  padding:22px;
}

.visual-client-grid h3,
.pain-visual-grid h3,
.scale-visual-grid h3,
.advantage-visual-grid h3,
.advantage-proof-grid h3,
.solution-system-visual-list h3,
.solution-flow-visual-grid h3,
.question-visual-grid h3{
  margin:0 0 10px;
  
  font-size:32px;
  line-height:1;
  
}

.visual-client-grid p,
.pain-visual-grid p,
.scale-visual-grid p,
.advantage-visual-grid p,
.advantage-proof-grid p,
.solution-system-visual-list p,
.solution-flow-visual-grid li,
.question-visual-grid p{
  margin:0;
  
  line-height:1.62;
}

.pain-visual-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.pain-visual-grid .room-visual{
  min-height:210px;
  
}

.scale-visual-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.scale-visual-grid .room-visual{
  min-height:250px;
  
}

.scale-visual-grid article

.scale-visual-grid ul,
.solution-flow-visual-grid ul{
  margin:16px 0 0;
  padding-left:18px;
  
}

.advantage-visual-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.advantage-visual-grid .room-visual{
  min-height:240px;
  
}

.advantage-proof-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.advantage-proof-grid article{
  display:grid;
  grid-template-columns:minmax(260px,.42fr) 1fr;
}

.advantage-proof-grid .room-visual{
  min-height:100%;
  
}

.advantage-proof-grid b{
  display:block;
  margin-top:16px;
  padding:12px 14px;
  
  
  
  line-height:1.5;
}

.solution-system-visual-list{
  grid-template-columns:1fr;
}

.solution-system-visual-list article{
  display:grid;
  grid-template-columns:300px 1fr;
}

.solution-system-visual-list .room-visual{
  min-height:240px;
  
}

.solution-flow-visual-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.solution-flow-visual-grid .room-visual{
  min-height:230px;
  
}

.question-visual-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.question-visual-grid article{
  display:grid;
  grid-template-columns:280px 1fr;
}

.question-visual-grid .room-visual{
  min-height:100%;
  
}

.consult-advantage-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.consult-advantage-list span{
  padding:9px 12px;
  
  
  border:1px solid var(--line);
  
  font-weight:800;
  font-size:12px;
}

.free-consultation-panel.v27{
  grid-template-columns:minmax(0,.75fr) minmax(520px,1.25fr);
}

.consultation-mini-form.v27{
  
  
  border:1px solid var(--line);
  
  overflow:hidden;
}

.consultation-mini-form.v27 .form-section-block{
  padding:28px 32px;
}

.consultation-mini-form.v27 .form-submit-row{
  padding:22px 32px;
}

@media (max-width:1260px){
  .split-visual-section,
  .advantage-proof-grid article,
  .solution-system-visual-list article,
  .question-visual-grid article{
    grid-template-columns:1fr;
  }

  .visual-client-grid,
  .pain-visual-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .solution-flow-visual-grid,
  .scale-visual-grid,
  .advantage-visual-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .free-consultation-panel.v27{
    grid-template-columns:1fr;
  }

  .advantage-proof-grid .room-visual,
  .question-visual-grid .room-visual{
    min-height:260px;
  }
}

@media (max-width:760px){
  .split-visual-section,
  .visual-client-grid,
  .pain-visual-grid,
  .scale-visual-grid,
  .advantage-visual-grid,
  .advantage-proof-grid,
  .solution-flow-visual-grid,
  .question-visual-grid{
    grid-template-columns:1fr;
  }

  .split-visual-section .room-visual{
    min-height:280px;
  }

  .solution-system-visual-list article{
    grid-template-columns:1fr;
  }

  .solution-system-visual-list .room-visual{
    min-height:220px;
  }

  .consultation-mini-form.v27 .form-section-block{
    padding:24px 20px;
  }

  .consultation-mini-form.v27 .form-submit-row{
    padding:20px;
  }
}


/* =========================
   V28 Resources pages all-English visual upgrade
   ========================= */
.resource-subnav-v28 a small{
  min-height:30px;
}

.resource-split-v28{
  margin-top:4px;
}

.resource-split-v28 .room-visual{
  min-height:440px;
}

.resource-advantage-v28{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.manufacturing-visual-grid-v28,
.quality-image-grid-v28,
.material-image-grid-v28{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.manufacturing-visual-grid-v28 article,
.quality-image-grid-v28 article,
.material-image-grid-v28 article,
.process-image-list-v28 article,
.before-after-v28 article{
  overflow:hidden;
  
  
  border:1px solid var(--line);
  
}

.dark .manufacturing-visual-grid-v28 article,
.dark .quality-image-grid-v28 article,
.dark .material-image-grid-v28 article{
}

.manufacturing-visual-grid-v28 .room-visual,
.quality-image-grid-v28 .room-visual,
.material-image-grid-v28 .room-visual{
  min-height:230px;
  
}

.manufacturing-visual-grid-v28 article>div:last-child,
.quality-image-grid-v28 article>div:last-child,
.material-image-grid-v28 article>div:last-child,
.process-image-list-v28 article>div:last-child,
.before-after-v28 article>div:last-child{
  padding:24px;
}

.manufacturing-visual-grid-v28 h3,
.quality-image-grid-v28 h3,
.material-image-grid-v28 h3,
.process-image-list-v28 h3,
.before-after-v28 h3{
  margin:0 0 10px;
  
  font-size:34px;
  line-height:1;
  
}

.manufacturing-visual-grid-v28 p,
.quality-image-grid-v28 p,
.material-image-grid-v28 p,
.process-image-list-v28 p,
.before-after-v28 p{
  margin:0;
  
  line-height:1.62;
}

.process-image-list-v28{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.process-image-list-v28 article{
  display:grid;
  grid-template-columns:260px 1fr;
}

.process-image-list-v28 .room-visual{
  min-height:100%;
  
}

.before-after-v28{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.before-after-v28 .room-visual{
  min-height:340px;
  
}

.material-proposal-layout-v28{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr);
  gap:34px;
  align-items:start;
}

.material-proposal-layout-v28 .smart-form{
  
  
  border:1px solid var(--line);
  
  overflow:hidden;
}

@media (max-width:1260px){
  .resource-advantage-v28,
  .manufacturing-visual-grid-v28,
  .quality-image-grid-v28,
  .material-image-grid-v28{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .process-image-list-v28 article,
  .material-proposal-layout-v28{
    grid-template-columns:1fr;
  }

  .process-image-list-v28 .room-visual{
    min-height:260px;
  }
}

@media (max-width:760px){
  .resource-advantage-v28,
  .manufacturing-visual-grid-v28,
  .quality-image-grid-v28,
  .material-image-grid-v28,
  .process-image-list-v28,
  .before-after-v28{
    grid-template-columns:1fr;
  }

  .resource-split-v28 .room-visual{
    min-height:280px;
  }

  .before-after-v28 .room-visual{
    min-height:260px;
  }
}

/* =========================================================
   V29 BRAND LAYER — design-led furnishing house
   ========================================================= */

/* Maker's mark (brand seal) — signature element */
.mark{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);font-size:15px;line-height:1}
.mark.small{width:32px;height:32px;font-size:11px}
.mark

/* Brand hero (homepage) */
.brand-hero{position:relative;min-height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.brand-hero .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;}
.brand-hero .hero-scrim{position:absolute;inset:0;}
.brand-hero-inner{position:relative;z-index:2;width:min(var(--max),calc(100% - 64px));margin:0 auto;padding:150px 0 64px}
.brand-hero .hero-eyebrow{display:flex;align-items:center;gap:16px;font-size:12px;text-transform:uppercase;margin-bottom:26px}
.brand-hero .hero-eyebrow::after{content:"";flex:0 0 64px;border-top:1px solid var(--line)}
.brand-hero h1{font-weight:400;font-size:clamp(46px,6.4vw,92px);line-height:1.02;margin:0 0 22px;max-width:15ch}
.brand-hero .hero-sub{font-size:18px;line-height:1.8;font-weight:300;max-width:560px;margin:0 0 34px}
.brand-hero .hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-baseline{position:relative;z-index:2;border-top:1px solid var(--line);margin-top:56px}
.hero-baseline-inner{width:min(var(--max),calc(100% - 64px));margin:0 auto;display:flex;justify-content:space-between;gap:24px;padding:20px 0 26px;font-size:12.5px;text-transform:uppercase;flex-wrap:wrap}

/* Manifesto */
.manifesto{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:start;max-width:980px}
.manifesto h2{font-weight:400;font-size:clamp(32px,3.6vw,52px);line-height:1.18;margin:0 0 18px;}
.manifesto p{font-size:17px;line-height:1.9;max-width:64ch;margin:0 0 14px;font-weight:300}
.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:10px;font-size:13px;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:6px}
.text-link:hover{border-bottom-}

/* Collection tiles */
.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.collection-tile{position:relative;display:block;min-height:340px;overflow:hidden;}
.collection-tile .tile-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .8s cubic-bezier(.22,.61,.36,1),opacity .4s}
.collection-tile:hover .tile-img{transform:scale(1.045)}
.collection-tile::after{content:"";position:absolute;inset:0;}
.collection-tile .tile-copy{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:14px}
.collection-tile h3{font-weight:400;font-size:27px;margin:0 0 4px;}
.collection-tile p{margin:0;font-size:13px;text-transform:uppercase;}
.collection-tile .mark{flex:0 0 auto;backdrop-}

/* Editorial split (brand story / atelier) */
.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;border:1px solid var(--line)}
.editorial-split .split-media{min-height:520px;background-size:cover;background-position:center}
.editorial-split .split-copy{padding:56px 58px;display:flex;flex-direction:column;justify-content:center}
.editorial-split h2{font-weight:400;font-size:clamp(30px,3vw,46px);line-height:1.14;margin:14px 0 16px}
.editorial-split p{line-height:1.9;font-weight:300;margin:0 0 12px}
.dark .editorial-split{border-}

/* Atelier facts */
.fact-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line)}
.fact{padding:30px 28px;border-left:1px solid var(--line)}
.fact:first-child{border-left:0}
.fact strong{display:block;font-weight:400;font-size:40px;line-height:1;margin-bottom:10px}
.fact span{display:block;font-size:14px;line-height:1.6;font-weight:300}

/* Section head refinement */
.eyebrow-mark{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.eyebrow-mark .eyebrow{margin-bottom:0}

/* Collections page: product cards */
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.product-card{border:1px solid var(--line)}
.product-card .p-img{position:relative;height:250px;background-size:cover;background-position:center}
.product-card .p-img .mark{position:absolute;right:12px;bottom:12px;}
.product-card .p-body{padding:18px 20px 20px}
.product-card h3{font-weight:400;font-size:22px;margin:0 0 4px}
.product-card .p-meta{font-size:12.5px;text-transform:uppercase;margin:0 0 10px}
.product-card .p-links{display:flex;gap:16px;font-size:12.5px;text-transform:uppercase}
.product-card .p-links a{border-bottom:1px solid var(--line);padding-bottom:3px}

/* Timeline (brand story) */
.brand-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.brand-timeline .t-item{padding:26px 24px;border:1px solid var(--line)}
.brand-timeline .t-item span{display:block;font-size:26px;margin-bottom:10px}
.brand-timeline .t-item h3{font-weight:400;font-size:24px;margin:0 0 8px}
.brand-timeline .t-item p{margin:0;font-weight:300}

@media (max-width:1260px){
  .collection-grid{grid-template-columns:repeat(2,1fr)}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .brand-timeline{grid-template-columns:repeat(2,1fr)}
  .fact-row{grid-template-columns:repeat(2,1fr)}
  .fact:nth-child(3){border-left:0}
  .fact:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:860px){
  .brand-hero-inner,.hero-baseline-inner{width:min(var(--max),calc(100% - 28px))}
  .brand-hero-inner{padding-top:120px}
  .manifesto{grid-template-columns:1fr;gap:18px}
  .collection-grid,.product-grid,.brand-timeline,.fact-row{grid-template-columns:1fr}
  .fact{border-left:0;border-top:1px solid var(--line)}
  .fact:first-child{border-top:0}
  .editorial-split{grid-template-columns:1fr}
  .editorial-split .split-media{min-height:300px}
  .editorial-split .split-copy{padding:34px 26px}
}
@media (prefers-reduced-motion:reduce){
  .collection-tile .tile-img{transition:none}
  html{scroll-behavior:auto}
}



/* ═══════════════════════════════════════════════════════════
   LISHI ONE — SKIN v36 "ATELIER WARM"
   The register a soft-furnishing house actually needs:
   warm ivory ground, one confident terracotta signature colour,
   rounded imagery, editorial serif headlines. Built for memorability.
   Single source of visual truth — change --accent to retheme.
   ═══════════════════════════════════════════════════════════ */
:root{
  --bg:#FBF5EC;
  --bg-alt:#F2E6D3;
  --panel:#ffffff;
  --ink:#241E17;
  --ink-2:#3A3226;
  --muted:#7C6F5C;
  --line:#E6D9C2;
  --accent:#B5573A;
  --accent-2:#8F3F28;
  --accent-soft:#F1DCC9;
  --dark:#241E17;
  --dark-2:#332A1F;
  --radius:10px;
  --radius-lg:16px;
  --shadow:0 10px 30px rgba(90,58,30,.08);
  --shadow-lg:0 26px 60px rgba(90,58,30,.16);
  --gold:var(--accent); --gold-2:var(--accent-2); --bg-soft:var(--bg-alt);
}
html{background:var(--bg)}
body{background:var(--bg);color:var(--ink);font-family:"Instrument Sans",Helvetica,Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent);color:#fff}
a{color:inherit;text-decoration:none}
p a,li a,.section-copy a,.page-lead a{color:var(--accent-2);border-bottom:1px solid rgba(181,87,58,.35);text-decoration:none}
p a:hover,li a:hover{border-bottom-color:var(--accent-2)}

/* ---------- typography ---------- */
h1,h2,h3,h4,.section-title,.page-title{font-family:"Fraunces",Georgia,serif;color:var(--ink);font-weight:460;letter-spacing:-.005em;text-transform:none}
.section-title{font-size:clamp(28px,2.9vw,42px);line-height:1.18}
.page-title{font-size:clamp(32px,3.6vw,52px);line-height:1.14}
.section-copy,.page-lead{color:var(--muted);font-size:16px;line-height:1.8}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:"Instrument Sans",sans-serif;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:14px}
.eyebrow::before{content:"";width:20px;height:1.5px;background:var(--accent)}
.eyebrow-mark .eyebrow::before{display:none}
strong{font-weight:600}

/* ---------- header ---------- */
.site-header{background:rgba(251,245,236,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);height:82px}
.page{padding-top:82px}
.brand{font-family:"Fraunces",serif;font-weight:500;font-size:21px;letter-spacing:.06em;color:var(--ink)}
.brand span{color:var(--accent);font-style:italic}
.site-header .nav-link{font-family:"Instrument Sans",sans-serif;font-size:13px;font-weight:500;color:#5c5343;border-radius:8px;padding:0 13px;letter-spacing:.01em;text-transform:none;position:relative}
.site-header .nav-link::after{display:none}
.site-header .nav-link:hover{color:var(--ink);background:var(--accent-soft)}
.site-header .nav-link.active{color:var(--accent-2);background:var(--accent-soft)}
.nav-toggle{color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff}
.dropdown{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:10px;min-width:242px}
.dropdown a{color:#5c5343;font-size:14px;border-radius:8px;padding:10px 12px}
.dropdown a:hover{background:var(--accent-soft);color:var(--accent-2)}
.dropdown a.active{color:var(--accent-2);background:var(--accent-soft)}
.start-pill{background:var(--accent);color:#fff;border:0;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:none;padding:0 22px}
.start-pill:hover{background:var(--accent-2)}

/* ---------- buttons & links ---------- */
.btn{border-radius:8px;font-size:13.5px;font-weight:600;letter-spacing:.01em;text-transform:none;padding:15px 28px;transition:.22s ease;font-family:"Instrument Sans",sans-serif}
.btn.gold{background:var(--accent);color:#fff}
.btn.gold:hover{background:var(--accent-2)}
.btn.outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}
.btn.outline:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.dark{background:var(--dark)!important;color:#fff!important;border:0!important}
.btn.dark:hover{background:var(--accent)!important}
.text-link,.view-project,.back-link,.pi-cta{color:var(--accent-2);font-family:"Instrument Sans",sans-serif;font-size:13px;font-weight:600;letter-spacing:.01em;text-transform:none;border:0;border-bottom:1px solid rgba(181,87,58,.4);padding-bottom:2px;background:none}
.text-link:hover,.view-project:hover,.back-link:hover{color:var(--ink);border-bottom-color:var(--ink)}
.p-links a{color:var(--accent-2);font-weight:600;font-size:12.5px;letter-spacing:.02em;text-transform:none;border-bottom:1px solid rgba(181,87,58,.4);padding-bottom:2px}
.p-links a:hover{color:var(--ink);border-bottom-color:var(--ink)}

/* ---------- sections ---------- */
.section{padding:100px 0}
.section.compact{padding:56px 0}
.section.alt{background:var(--bg-alt)}
.section-head{margin-bottom:42px}
.mark{border:1.5px solid var(--accent);color:var(--accent-2);border-radius:8px;font-family:"Fraunces",serif;font-weight:500;font-size:12px}
.mark.small{font-size:10px;border-radius:6px}
.tiny-label{background:rgba(36,30,23,.7);color:#fff;border-radius:6px;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(4px);padding:7px 11px}

/* ---------- surfaces ---------- */
.card,.form-card,.detail-panel,.summary-tile,.control-card,.check-card,.woo-panel,.woo-summary,
.material-card,.choice-card,.style-card,.deposit-logic-card-v24,.step,.stat,
.woo-product,.woo-logic,.testimonial-card-v24,.upload-card,.editorial-split,.cap-card{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.card:hover,.cap-card:hover,.choice-card:hover{box-shadow:var(--shadow-lg);border-color:#dccba9}
.project-card,.product-card{background:transparent;border:0;box-shadow:none}
.project-card-body{padding:20px 0 0}
.project-card-body h3{font-size:20px}
.project-subtitle{color:var(--muted);font-size:14.5px}
.product-card .p-body{padding:16px 2px 0}
.product-card h3{font-size:17px}
.product-card .p-meta{color:var(--muted);font-size:12.5px}
.cta-band{padding:52px 52px;border-radius:var(--radius-lg);background:linear-gradient(120deg,var(--accent),var(--accent-2));border:0;box-shadow:var(--shadow-lg)}
.cta-band h2{color:#fff;font-size:clamp(24px,2.4vw,34px)}
.cta-band p{color:rgba(255,255,255,.85)}
.cta-band .btn.gold{background:#fff;color:var(--accent-2)}
.cta-band .btn.gold:hover{background:var(--ink);color:#fff}
.cta-band .btn.outline{border-color:rgba(255,255,255,.7);color:#fff}
.cta-band .btn.outline:hover{background:#fff;color:var(--accent-2);border-color:#fff}
.payment-note,.woo-checkout-note,.deposit-note-v24{background:var(--accent-soft);border:1px solid #e6c8ab;border-radius:10px;color:#6b4025}
.pill{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:500;padding:10px 18px}
.pill:hover{border-color:var(--accent);color:var(--accent-2)}
.pill.active{background:var(--accent);border-color:var(--accent);color:#fff}
.num{background:var(--accent-soft);color:var(--accent-2);border-radius:50%;font-weight:700;border:0;font-family:"Fraunces",serif}
.step-line::before{border-top:1.5px dashed #e6c8ab}
.stat strong,.fact strong{font-family:"Fraunces",serif;font-weight:500;font-size:38px;color:var(--accent-2)}
.stat span,.fact span{color:var(--muted)}
.fact-row,.fact{border-color:var(--line)}
.quote-mark{color:var(--accent)}
.summary-tile span{color:var(--accent-2);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:11px}
.summary-tile strong{font-family:"Fraunces",serif;font-weight:500;font-size:17px}

/* ---------- page hero (subpages) — spacing fixed, warm gradient ---------- */
.page-hero{background:linear-gradient(100deg,var(--dark) 0%,#3e3324 55%,#4a3d2b 100%);padding:52px 0 64px;border:0}
.page-hero::before{display:none}
.page-hero::after{clip-path:none;width:40%;opacity:.5;filter:saturate(.9) brightness(.85);border:0;border-radius:0 0 0 var(--radius-lg)}
.page-hero .breadcrumb{color:var(--accent-soft);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.page-hero .page-title{color:#fff;margin:0 0 14px}
.page-hero .page-lead{color:rgba(255,255,255,.78)}
@media (max-width:1023px){.page-hero::after{display:none}}

/* ---------- forms ---------- */
input,select,textarea{background:#fff;color:var(--ink);border:1px solid #e0d3ba;border-radius:8px}
input::placeholder,textarea::placeholder{color:#a89a80}
input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(181,87,58,.14)}
.field label,.field span{color:#5c5343;font-size:13.5px;font-weight:600}
.file-drop{background:#fdfaf5;border:1.5px dashed #d9c7a4;border-radius:10px}
.form-section-title{font-weight:700;color:var(--ink)}
.choice-card input[type="radio"],.choice-card input[type="checkbox"],.style-card input[type="radio"],.style-card input[type="checkbox"]{border:1.5px solid #d9c7a4;border-radius:6px;background:#fff}
.choice-card input:checked,.style-card input:checked{background:var(--accent);border-color:var(--accent)}

/* ---------- imagery: rounded and warm ---------- */
.room-visual,.tile-img,.split-media,.p-img{filter:none;border-radius:var(--radius)}
.project-card-media .room-visual{border-radius:var(--radius)}
.p-img{border-radius:var(--radius) var(--radius) 0 0}
.product-card .p-img .mark{background:#fff;color:var(--accent-2);border-color:rgba(181,87,58,.5)}
.collection-tile{border-radius:var(--radius);overflow:hidden}
.collection-tile::after{background:linear-gradient(180deg,rgba(36,30,23,0) 42%,rgba(36,30,23,.72))}
.collection-tile h3{color:#fff;font-family:"Fraunces",serif;font-size:23px;font-weight:500}
.collection-tile p{color:rgba(255,255,255,.78);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.collection-tile .mark{color:#fff;border-color:rgba(255,255,255,.7);background:rgba(36,30,23,.3)}

/* ---------- homepage: pf-* Poliform-pattern, warm register ---------- */
.pf-block{padding:0;margin:0 0 10px}
.pf-media{position:relative;width:100%;height:min(78vh,760px);background-size:cover;background-position:center;background-color:var(--bg-alt);border-radius:var(--radius-lg);overflow:hidden}
.pf-media.short{height:min(56vh,520px)}
main > .pf-block:first-child .pf-media{height:100%;border-radius:0}
.pf-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pf-caption{max-width:720px;margin:0 auto;padding:46px 24px 90px;text-align:center}
.pf-caption.wide{max-width:820px}
.pf-kicker{display:block;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:14px;}
.pf-caption h2,.pf-caption h3{font-family:"Fraunces",serif;font-size:clamp(20px,2vw,29px);font-weight:460;line-height:1.4;color:var(--ink);margin:0 0 14px}
.pf-caption p{color:var(--muted);font-size:15.5px;line-height:1.8;margin:0 0 22px}
.pf-links{display:flex;gap:30px;justify-content:center;flex-wrap:wrap}
.pf-hero-overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 24px 60px;text-align:center;background:linear-gradient(180deg,rgba(20,16,11,0) 30%,rgba(20,16,11,.6))}
.pf-hero-wordmark{font-family:"Fraunces",serif;font-size:clamp(34px,5vw,64px);font-weight:460;letter-spacing:.01em;color:#fff}
.pf-hero-wordmark em{font-style:italic;color:#F0C8A8}
.pf-hero-line{font-family:"Instrument Sans",sans-serif;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.pf-duo{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pf-item .pf-media{height:min(56vh,520px)}
.pf-item .pf-caption{padding:34px 20px 70px;max-width:520px}
.pf-item h3{font-size:19px}
.pf-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel);margin:10px 0}
.pf-strip-inner{display:flex;gap:36px;justify-content:center;align-items:center;padding:24px 24px;overflow-x:auto;white-space:nowrap}
.pf-strip-inner a{font-family:"Instrument Sans",sans-serif;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#6b6153}
.pf-strip-inner a:hover{color:var(--accent-2)}
.pf-contact{max-width:640px;margin:0 auto;padding:110px 24px;text-align:center}
.pf-contact h2{font-family:"Fraunces",serif;font-size:clamp(24px,2.4vw,34px);margin:0 0 14px}
.pf-contact p{color:var(--muted);line-height:1.85;margin:0 0 26px}

/* ---------- split-row : natural, rounded, asymmetric offset ---------- */
.split-row{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.split-row .split-media{min-height:440px;background-size:cover;background-position:center;border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.split-row .split-copy{padding:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.split-row.rev{grid-template-columns:.95fr 1.05fr}
.split-row.rev .split-media{order:2}
.split-row h2{font-size:clamp(22px,2.1vw,30px);line-height:1.32;margin:0 0 16px}
.split-row p{color:var(--muted);line-height:1.85;margin:0 0 14px;font-size:15.5px}
.split-row:nth-of-type(odd) .split-media{margin-top:-28px}
.split-row:nth-of-type(even) .split-media{margin-bottom:-28px}

/* ---------- strength band ---------- */
.num-band{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.num-band > div{padding:24px 22px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.num-band strong{display:block;font-family:"Fraunces",serif;font-size:30px;font-weight:500;color:var(--accent-2);margin-bottom:6px}
.num-band span{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* ---------- atelier grid ---------- */
.atelier-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:44px 48px}
.ag-item h3{font-family:"Fraunces",serif;font-size:19px;font-weight:500;margin:20px 0 10px}
.ag-item p{color:var(--muted);font-size:14.5px;line-height:1.8;margin:0 0 14px}
.ag-media{height:280px;background-size:cover;background-position:center;background-color:var(--bg-alt);border-radius:var(--radius-lg)}
.ag-item:nth-child(2n){margin-top:32px}

/* ---------- global presence + payment ---------- */
.loc-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.loc-list li{color:var(--muted);font-size:13.5px;padding-left:18px;position:relative}
.loc-list li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.pay-panel{border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-lg);padding:42px 40px;box-shadow:var(--shadow)}
.pay-panel h3{font-family:"Fraunces",serif;font-size:20px;font-weight:500;margin:0 0 12px}
.pay-panel p{color:var(--muted);font-size:14.5px;line-height:1.8;margin:0 0 18px}
.pay-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.pay-badges span{border:1px solid var(--line);background:var(--bg-alt);border-radius:6px;padding:8px 12px;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#5c5343}

/* ---------- footer ---------- */
.footer{background:var(--dark);color:#d8cdba;padding:68px 0 0;border:0}
.footer .brand{color:#fff}
.footer .brand span{color:#F0C8A8}
.footer p{color:#a99d88;line-height:1.8;font-size:14.5px}
.footer h3{font-family:"Instrument Sans",sans-serif;color:#fff;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px}
.footer a{color:#c6bba8;font-size:14px}
.footer a:hover{color:var(--accent-soft)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px}
.footer-bottom-inner{font-size:12px;color:#8f8571;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:22px 0 26px;width:min(1360px,calc(100% - 64px));margin:0 auto}
.footer-bottom-inner a{color:#a99d88}
.footer-locs{margin:14px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.footer-locs li{color:#a99d88;font-size:13px}

/* ---------- floating contact — circular, warm ---------- */
.floating-contact{right:24px;gap:12px}
.float-main,.float-link{width:52px;height:52px;min-height:0;border-radius:50%;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);color:var(--ink-2)}
.float-main{background:var(--accent);color:#fff;border-color:var(--accent);font-size:0}
.float-main svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.float-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}
.float-link.whatsapp{color:#25D366}
.float-link.whatsapp:hover{background:#25D366;color:#fff;border-color:#25D366}
.float-link.instagram{color:#C1387A}
.float-link.instagram:hover{background:linear-gradient(135deg,#f9ce34,#ee2a7b 55%,#6228d7);color:#fff;border-color:transparent}
.float-link.facebook{color:#1877F2}
.float-link.facebook:hover{background:#1877F2;color:#fff;border-color:#1877F2}
.float-link.email:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.float-link::before{background:var(--ink);color:#fff;border:0;border-radius:6px;font-family:"Instrument Sans",sans-serif;font-weight:500;letter-spacing:.02em}
.float-main:hover,.float-link:hover{transform:translateY(-2px) scale(1.03);box-shadow:var(--shadow-lg)}
@media (max-width:760px){
  .floating-contact{background:rgba(251,245,236,.96);border-radius:16px;box-shadow:0 -6px 24px rgba(90,58,30,.1)}
  .float-link{border-radius:50%}
}

/* ---------- step timeline — horizontal, warm nodes ---------- */
.step-line{grid-template-columns:repeat(6,1fr);gap:0;align-items:start;padding-top:8px}
.step-line::before{top:27px;left:calc(100%/12);right:calc(100%/12)}
.step{border:0;background:transparent;padding:0 14px;box-shadow:none;text-align:center}
.step .num{width:54px;height:54px;border:0;background:var(--accent-soft);color:var(--accent-2);font-family:"Fraunces",serif;font-weight:500;font-size:17px;margin:0 auto 20px;display:grid;place-items:center;border-radius:50%}
.step h3{font-family:"Fraunces",serif;font-size:17px;font-weight:500;margin:0 0 8px}
.step p{font-size:13.5px;color:var(--muted);line-height:1.7}
@media (max-width:900px){
  .step-line{grid-template-columns:1fr;gap:26px}
  .step-line::before{display:none}
  .step{display:grid;grid-template-columns:54px 1fr;gap:16px;text-align:left;padding:0}
  .step .num{margin:0}
  .step h3,.step p{text-align:left}
}

/* ---------- project detail page — editorial spread, warm ---------- */
.project-detail-hero{padding:44px 0 0}
.detail-hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center;padding-bottom:44px}
.back-link{display:inline-block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:20px;border:0}
.back-link:hover{color:var(--accent-2)}
.detail-hero-copy .breadcrumb{color:var(--accent-2);font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.detail-hero-copy h1{font-family:"Fraunces",serif;font-size:clamp(30px,3.6vw,48px);font-weight:460;margin:0 0 18px}
.detail-hero-copy p{color:var(--muted);line-height:1.85;max-width:46ch;margin:0 0 28px}
.project-hero-slider{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.project-summary-section{background:var(--bg-alt);margin:0}
.project-summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.summary-tile{border:0;background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 18px}
.detail-split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
.detail-panel{border:0;background:transparent;box-shadow:none;padding:0}
.detail-panel h2{font-family:"Fraunces",serif;font-weight:460;margin:0 0 16px}
.detail-panel p{color:var(--muted);line-height:1.85}
.icon-list{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.icon-list li{padding-left:24px;position:relative;color:var(--muted);font-size:14.5px;line-height:1.7}
.icon-list li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:50%;background:var(--accent-soft);border:1.5px solid var(--accent)}
.challenge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.challenge-grid .detail-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px 24px}
.challenge-grid h3{font-family:"Instrument Sans",sans-serif;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2);margin:0 0 10px}
.project-carousel .carousel-visual .room-visual{border-radius:var(--radius-lg)}
.carousel-copy h3{font-family:"Fraunces",serif;font-weight:500;margin:0 0 10px}
.carousel-copy ul{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.carousel-copy ul li{padding-left:20px;position:relative;font-size:13.5px;color:var(--muted)}
.carousel-copy ul li::before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:50%;background:var(--accent)}

@media (max-width:1200px){.cap-grid{grid-template-columns:repeat(2,1fr)}.atelier-grid{grid-template-columns:1fr;gap:34px}.ag-item:nth-child(2n){margin-top:0}}
@media (max-width:1023px){
  .detail-hero-grid{grid-template-columns:1fr;gap:28px}
  .project-summary-grid{grid-template-columns:repeat(2,1fr)}
  .detail-split{grid-template-columns:1fr;gap:32px}
  .challenge-grid{grid-template-columns:1fr}
  .split-row{grid-template-columns:1fr !important}
  .split-row.rev .split-media{order:0}
  .split-row .split-media{min-height:280px;margin-top:0!important;margin-bottom:0!important}
}
@media (max-width:900px){
  .section{padding:64px 0}
  main > .pf-block:first-child .pf-media{height:calc(88vh - 82px)}
  .pf-duo{grid-template-columns:1fr}
  .pf-media{height:min(50vh,420px)}
  .pf-caption{padding:30px 20px 56px}
  .pf-strip-inner{justify-content:flex-start;gap:24px}
  .num-band{grid-template-columns:repeat(2,1fr)}
  .cta-band{padding:32px 26px}
  .footer-bottom-inner{width:min(1360px,calc(100% - 28px))}
}
@media (prefers-reduced-motion:reduce){}

/* image variants */
.img-meeting{background-image:url('images/meeting.jpg')}
.img-showroom{background-image:url('images/showroom.jpg')}
.banner-commercial::after{background-image:url('images/office-b.jpg')}

/* ---------- per-project unique imagery (no two projects share a photo) ---------- */
.page-proj-coastal-resort-hotel .img-material,.page-proj-coastal-resort-hotel .material{background-image:url('images/showroom-b.jpg')}
.page-proj-coastal-resort-hotel .img-installation,.page-proj-coastal-resort-hotel .installation,.page-proj-coastal-resort-hotel .finished{background-image:url('images/meeting-c.jpg')}
.page-proj-coastal-resort-hotel .img-design,.page-proj-coastal-resort-hotel .design{background-image:url('images/sea-suite.jpg')}

.page-proj-hillside-private-villa .img-material,.page-proj-hillside-private-villa .material{background-image:url('images/office-a-b.jpg')}
.page-proj-hillside-private-villa .img-installation,.page-proj-hillside-private-villa .installation,.page-proj-hillside-private-villa .finished{background-image:url('images/apartment-c.jpg')}
.page-proj-hillside-private-villa .img-design,.page-proj-hillside-private-villa .design{background-image:url('images/living-room.jpg')}

.page-proj-signature-restaurant .img-material,.page-proj-signature-restaurant .material{background-image:url('images/factory-b.jpg')}
.page-proj-signature-restaurant .img-installation,.page-proj-signature-restaurant .installation,.page-proj-signature-restaurant .finished{background-image:url('images/office-b-c.jpg')}
.page-proj-signature-restaurant .img-design,.page-proj-signature-restaurant .design{background-image:url('images/restaurant.jpg')}

.page-proj-serviced-apartment-units .img-material,.page-proj-serviced-apartment-units .material{background-image:url('images/hotel-lobby-b.jpg')}
.page-proj-serviced-apartment-units .img-installation,.page-proj-serviced-apartment-units .installation,.page-proj-serviced-apartment-units .finished{background-image:url('images/showroom-c.jpg')}
.page-proj-serviced-apartment-units .img-design,.page-proj-serviced-apartment-units .design{background-image:url('images/apartment.jpg')}

.page-proj-urban-commercial-center .img-material,.page-proj-urban-commercial-center .material{background-image:url('images/meeting-b.jpg')}
.page-proj-urban-commercial-center .img-installation,.page-proj-urban-commercial-center .installation,.page-proj-urban-commercial-center .finished{background-image:url('images/living-room-c.jpg')}
.page-proj-urban-commercial-center .img-design,.page-proj-urban-commercial-center .design{background-image:url('images/hotel-lobby.jpg')}

.page-proj-regional-hq-office .img-material,.page-proj-regional-hq-office .material{background-image:url('images/restaurant-b.jpg')}
.page-proj-regional-hq-office .img-installation,.page-proj-regional-hq-office .installation,.page-proj-regional-hq-office .finished{background-image:url('images/factory-c.jpg')}
.page-proj-regional-hq-office .img-design,.page-proj-regional-hq-office .design{background-image:url('images/office-a.jpg')}

/* featured-card emphasis */
.scale-visual-grid article.featured{position:relative}
.scale-visual-grid article.featured::after{content:"Recommended";position:absolute;top:14px;right:14px;z-index:2;background:var(--accent);color:#fff;border-radius:999px;font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px}

/* gentle scroll reveal */
html.js-reveal .section,html.js-reveal .pf-block,html.js-reveal .pf-strip{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
html.js-reveal .in-view{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html.js-reveal .section,html.js-reveal .pf-block,html.js-reveal .pf-strip{opacity:1;transform:none;transition:none}
}

/* ---------- footer social icons ---------- */
.footer-social{display:inline-flex;gap:10px;align-items:center}
.footer-social a{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:#c6bba8;transition:.2s ease}
.footer-social a svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.footer-social a:hover{color:#fff;border-color:var(--accent);background:var(--accent)}
.footer-bottom-inner{align-items:center}

/* ═══════════════════════════════════════════════════════════
   V37 — motion & polish: hover imagery, staggered reveal,
   animated stats, drawing step-line. Shows craft, not clutter.
   ═══════════════════════════════════════════════════════════ */

/* 1 · consistent image hover-zoom across every photo card */
.project-card-media,.product-card .p-img,.ag-media,.pf-media,.split-row .split-media{overflow:hidden}
.project-card-media .room-visual,.product-card .p-img,.ag-media,.pf-media,.split-row .split-media{
  transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.project-card:hover .project-card-media .room-visual,
.product-card:hover .p-img,
.ag-item:hover .ag-media,
.pf-item:hover .pf-media,
.split-row:hover .split-media{transform:scale(1.035)}
.pf-block:first-child .pf-media,main>.pf-block:first-child .pf-media{transition:none}
main>.pf-block:first-child:hover .pf-media{transform:none}

/* 2 · staggered grid reveal — children fade in one after another, not as one block */
html.js-reveal .stagger-item{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
html.js-reveal .stagger-item.in-view{opacity:1;transform:none}
.collection-grid .collection-tile:nth-child(1),.cap-grid .cap-card:nth-child(1),.atelier-grid .ag-item:nth-child(1),.project-gallery .project-card:nth-child(1),.product-grid .product-card:nth-child(1){transition-delay:0s}
.collection-grid .collection-tile:nth-child(2),.cap-grid .cap-card:nth-child(2),.atelier-grid .ag-item:nth-child(2),.project-gallery .project-card:nth-child(2),.product-grid .product-card:nth-child(2){transition-delay:.08s}
.collection-grid .collection-tile:nth-child(3),.cap-grid .cap-card:nth-child(3),.atelier-grid .ag-item:nth-child(3),.project-gallery .project-card:nth-child(3),.product-grid .product-card:nth-child(3){transition-delay:.16s}
.collection-grid .collection-tile:nth-child(4),.cap-grid .cap-card:nth-child(4),.atelier-grid .ag-item:nth-child(4),.product-grid .product-card:nth-child(4){transition-delay:.24s}
.collection-grid .collection-tile:nth-child(5),.product-grid .product-card:nth-child(5){transition-delay:.32s}
.collection-grid .collection-tile:nth-child(6),.product-grid .product-card:nth-child(6){transition-delay:.4s}

/* 3 · animated counting stats */
.num-band strong,.os-stat strong,.stat strong{font-variant-numeric:tabular-nums}

/* 4 · step-line draws in left-to-right on scroll */
.step-line{position:relative}
.step-line::before{transform-origin:left center;transform:scaleX(0);transition:transform 1.1s cubic-bezier(.22,.61,.36,1)}
.step-line.in-view::before{transform:scaleX(1)}

/* 5 · buttons get a touch more life */
.btn.gold,.btn.outline,.btn.dark{position:relative;overflow:hidden}
.btn.gold:active,.btn.outline:active,.btn.dark:active{transform:scale(.98)}

/* 6 · subtle card lift on hover for professionalism cues (credentials/capability cards) */
.cap-card,.card,.choice-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.cap-card:hover,.card:hover{transform:translateY(-3px)}

@media (prefers-reduced-motion:reduce){
  .project-card-media .room-visual,.product-card .p-img,.ag-media,.pf-media,.split-row .split-media,
  html.js-reveal .stagger-item,.step-line::before,.cap-card,.card{transition:none!important;transform:none!important}
}

/* ═══════════════════════════════════════════════════════════
   V38 — brand journey timeline (From Studio to Brand)
   ═══════════════════════════════════════════════════════════ */
.brand-journey{position:relative;display:flex;flex-direction:column;gap:60px}
.brand-journey::before{content:"";position:absolute;left:50%;top:4px;bottom:4px;width:1px;background:var(--line);transform:translateX(-50%)}
.bj-item{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.bj-item:nth-child(even) .bj-media{order:2}
.bj-media{height:400px;background-size:cover;background-position:center;border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.bj-item:hover .bj-media{transform:scale(1.025)}
.bj-copy{max-width:400px}
.bj-item:nth-child(even) .bj-copy{margin-left:auto;text-align:right}
.bj-num{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-family:"Fraunces",serif;font-size:18px;font-weight:500;box-shadow:0 0 0 6px var(--bg);z-index:2}
.bj-copy h3{font-family:"Fraunces",serif;font-weight:500;font-size:24px;margin:14px 0 10px}
.bj-copy p{color:var(--muted);line-height:1.8;font-size:15px;margin:0}
html.js-reveal .bj-item{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
html.js-reveal .bj-item.in-view{opacity:1;transform:none}

@media (max-width:860px){
  .brand-journey::before{left:24px;top:2px}
  .bj-item{grid-template-columns:1fr;gap:18px;padding-left:58px;text-align:left!important}
  .bj-item:nth-child(even) .bj-media{order:0}
  .bj-item:nth-child(even) .bj-copy{margin-left:0}
  .bj-num{position:absolute;top:2px;left:-58px;transform:none}
  .bj-media{height:210px}
  .bj-copy{max-width:none}
}

/* ═══════════════════════════════════════════════════════════
   V38 — featured-projects listing: left-right staggered, warm
   ═══════════════════════════════════════════════════════════ */
.projects-visual-v24 .project-gallery{gap:32px}
.projects-visual-v24 .project-card{border:0;border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--panel);min-height:380px;transition:box-shadow .3s ease,transform .3s ease}
.projects-visual-v24 .project-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.projects-visual-v24 .project-card-media,.projects-visual-v24 .project-card-media .room-visual{min-height:380px;border-radius:0}
.projects-visual-v24 .project-card:nth-child(even){grid-template-columns:1fr minmax(360px,.46fr)}
.projects-visual-v24 .project-card:nth-child(even) .project-card-media{order:2}
.projects-visual-v24 .project-card-body{padding:40px 46px}
.projects-visual-v24 .project-card-body h3{font-family:"Fraunces",serif;font-weight:500;font-size:30px}
.project-specs{border-color:var(--line)}
.project-specs strong{font-family:"Fraunces",serif;color:var(--accent-2);font-size:19px}
.project-specs span{color:var(--muted)}
.project-products b{color:var(--ink)}
.project-insight p{border:0;background:var(--bg-alt);border-radius:8px}
.project-insight b{color:var(--accent-2);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}

@media (max-width:900px){
  .projects-visual-v24 .project-card:nth-child(even){grid-template-columns:1fr}
  .projects-visual-v24 .project-card:nth-child(even) .project-card-media{order:0}
  .projects-visual-v24 .project-card-body{padding:26px 24px}
}

/* ═══════════════════════════════════════════════════════════
   V38 — How We Work: image+text alternating process story
   ═══════════════════════════════════════════════════════════ */
.process-visual-grid{display:flex;flex-direction:column;gap:64px;grid-template-columns:none;margin-top:12px}
.process-visual-card{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;overflow:visible;border:0;background:transparent;box-shadow:none;position:relative}
.process-visual-card:nth-child(even) .room-visual{order:2}
.process-visual-card:nth-child(even) .copy{text-align:right}
.process-visual-card .room-visual{min-height:320px;border-radius:var(--radius-lg);box-shadow:var(--shadow);position:relative;overflow:hidden;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.process-visual-card:hover .room-visual{transform:scale(1.02)}
.process-visual-card .tiny-label{position:absolute;top:20px;left:20px;background:var(--accent);color:#fff;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-family:"Fraunces",serif;font-size:19px;font-weight:500;padding:0;backdrop-filter:none;box-shadow:0 6px 18px rgba(90,58,30,.25)}
.process-visual-card:nth-child(even) .tiny-label{left:auto;right:20px}
.process-visual-card .copy{padding:0}
.process-visual-card .copy h3{font-family:"Fraunces",serif;font-weight:500;font-size:27px;margin:0 0 12px}
.process-visual-card .copy p{color:var(--muted);line-height:1.85;font-size:15.5px;margin:0}
html.js-reveal .process-visual-card{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
html.js-reveal .process-visual-card.in-view{opacity:1;transform:none}

@media (max-width:860px){
  .process-visual-card{grid-template-columns:1fr;gap:20px}
  .process-visual-card:nth-child(even) .room-visual{order:0}
  .process-visual-card:nth-child(even) .copy{text-align:left}
  .process-visual-card .room-visual{min-height:240px}
}

/* fix duplicate photo within How We Work: Consultation vs Quotation steps */
.page-proj-process .design{background-image:url('images/showroom-c.jpg')}

/* ═══════════════════════════════════════════════════════════
   V39 — real logo integration + monochrome-anchored palette
   ═══════════════════════════════════════════════════════════ */
:root{--ink:#0F0D0A}

.brand{display:inline-flex;align-items:center;height:auto}
.brand-logo{height:80px;width:auto;display:block}
.footer-logo{height:80px}
.pf-hero-logo{display:block;height:clamp(46px,6vw,74px);width:auto;margin:0 auto 4px}

/* nav / footer text now anchor to true black, terracotta stays the one accent */
.site-header .nav-link.active{color:var(--accent-2)}
.footer a:hover{color:#fff}

@media (max-width:760px){
  .brand-logo{height:22px}
}


/* =========================
   V35 optimized on uploaded reference design
   Menu: Home / Brand / Custom / Furniture / Projects / Factory / Enquire
   ========================= */

.v35-nav{gap:10px}
.v35-nav .nav-link.active{color:var(--gold)}
.v35-nav .start-pill.active{border-color:var(--gold);color:white !important}
.brand-logo{max-height:80px;width:auto}
.footer-logo{max-height:80px}

.custom-scope-ref-grid,
.factory-gallery-ref,
.factory-flow-ref,
.proof-lane,
.pavilion-wall{
  display:grid;
  gap:18px;
}

.custom-scope-ref-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.custom-scope-ref-grid article,
.factory-gallery-ref article,
.factory-flow-ref article,
.proof-lane>div,
.pavilion-wall article,
.mini-compare-grid article{
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  overflow:hidden;
}

.scope-img,
.factory-gallery-ref article>div,
.sample-img{
  min-height:360px;
  background-size:cover;
  background-position:center;
  transition:transform .55s ease, filter .35s ease;
}

.custom-scope-ref-grid article:hover .scope-img,
.factory-gallery-ref article:hover>div,
.pavilion-wall article:hover .sample-img{
  transform:scale(1.045);
  filter:saturate(1.08) contrast(1.04);
}

.custom-scope-ref-grid h3,
.factory-gallery-ref h3,
.factory-flow-ref h3,
.proof-lane h3,
.pavilion-wall h3,
.mini-compare-grid h3{
  font-size:34px;
  line-height:1;
  font-weight:400;
  margin:20px 20px 8px;
}

.custom-scope-ref-grid p,
.factory-gallery-ref p,
.factory-flow-ref p,
.proof-lane p,
.pavilion-wall p,
.mini-compare-grid p{
  margin:0 20px 22px;
  color:var(--muted);
}

.custom-compare-section{background:#f4efe7}
.compare-stage{
  display:grid;
  grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr);
  gap:18px;
  align-items:center;
}

.compare-card{
  position:relative;
  min-height:580px;
  overflow:hidden;
  background:#111;
  border:1px solid rgba(0,0,0,.12);
}

.compare-media{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transition:transform .65s ease, filter .35s ease;
}

.compare-card.before .compare-media{filter:saturate(.72) brightness(.74)}
.compare-card.after .compare-media{filter:saturate(1.08) brightness(.92)}
.compare-card:hover .compare-media{transform:scale(1.04)}
.compare-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.72));
}
.compare-copy{
  position:absolute;
  left:26px;
  right:26px;
  bottom:26px;
  z-index:2;
  color:#fff;
}
.compare-copy span{
  display:inline-block;
  margin-bottom:12px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--gold-2);
}
.compare-copy h3{
  font-size:44px;
  line-height:.95;
  font-weight:400;
  margin:0 0 12px;
}
.compare-copy p{color:rgba(255,255,255,.72);margin:0}
.compare-arrow{
  width:74px;height:74px;border:1px solid var(--gold);
  color:var(--gold);display:grid;place-items:center;
  font-size:34px;background:#fff;
}
.mini-compare-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:22px;
}
.mini-compare-media{
  display:grid;
  grid-template-columns:1fr 1fr;
}
.mini-compare-media>div{
  position:relative;
  min-height:230px;
  background-size:cover;
  background-position:center;
}
.mini-compare-media>div:first-child{filter:saturate(.7) brightness(.75)}
.mini-compare-media span{
  position:absolute;left:12px;top:12px;padding:6px 9px;
  background:rgba(0,0,0,.58);color:#fff;font-size:11px;text-transform:uppercase;
}

.proof-lane{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.proof-lane>div{padding:22px}
.proof-lane strong,
.factory-flow-ref strong{
  display:block;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--gold);
  margin-bottom:20px;
}
.proof-lane h3,
.factory-flow-ref h3{margin-left:0;margin-top:0}
.proof-lane p,
.factory-flow-ref p{margin-left:0;margin-bottom:0}

.pavilion-filter{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:28px;
}
.pavilion-filter button{
  min-height:42px;
  border:1px solid var(--line);
  padding:0 16px;
  background:transparent;
  color:inherit;
  text-transform:uppercase;
  font-size:12px;
}
.pavilion-filter button.active,
.pavilion-filter button:hover{
  border-color:var(--gold);
  color:var(--gold);
}
.pavilion-wall{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.pavilion-wall article{
  cursor:pointer;
  position:relative;
}
.pavilion-wall article::after{
  content:"View Details";
  position:absolute;
  top:14px;
  right:14px;
  padding:7px 10px;
  background:rgba(0,0,0,.62);
  color:#fff;
  font-size:11px;
  text-transform:uppercase;
  opacity:0;
  transform:translateY(-6px);
  transition:.25s ease;
}
.pavilion-wall article:hover::after{opacity:1;transform:none}
.pavilion-wall article.is-hidden{display:none}
.pavilion-wall article>div:last-child span{
  display:block;
  margin:18px 20px 8px;
  color:var(--gold);
  font-size:12px;
  text-transform:uppercase;
}
.pavilion-wall h3{margin-top:0}
.pavilion-modal{
  position:fixed;
  inset:0;
  z-index:999;
  display:none;
}
.pavilion-modal.open{display:block}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(10px)}
.modal-card{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(1080px,calc(100% - 36px));
  display:grid;
  grid-template-columns:1.1fr .9fr;
  background:#f4efe7;
  border:1px solid var(--line);
  max-height:calc(100vh - 48px);
  overflow:auto;
}
.modal-media{min-height:560px;background-size:cover;background-position:center}
.modal-copy{padding:48px;display:flex;flex-direction:column;justify-content:center}
.modal-copy h2{font-size:58px;line-height:.95;font-weight:400;margin:12px 0 12px}
.modal-options{border:1px solid rgba(0,0,0,.12);padding:16px;margin:16px 0 24px}
.modal-options strong{display:block;margin-bottom:8px}
.modal-close{
  position:absolute;right:14px;top:14px;width:42px;height:42px;
  border:1px solid var(--line);background:#111;color:#fff;font-size:26px;z-index:2
}

.factory-gallery-ref{grid-template-columns:repeat(3,minmax(0,1fr))}
.factory-gallery-ref article>div{min-height:270px}
.factory-flow-ref{
  grid-template-columns:repeat(6,minmax(0,1fr));
}
.factory-flow-ref article{padding:22px}

.factory-delivery-ref-section{background:#101014;color:#fff}
.delivery-board-ref{
  display:grid;
  gap:34px;
}
.delivery-intro-ref{max-width:880px}
.delivery-intro-ref h2{
  font-size:58px;
  line-height:.96;
  font-weight:400;
  margin:0 0 14px;
}
.delivery-intro-ref p{color:rgba(255,255,255,.68)}
.delivery-metrics-ref{
  display:grid;
  grid-template-columns:1.35fr repeat(3,1fr);
  gap:14px;
}
.delivery-metrics-ref>div{
  min-height:170px;
  border:1px solid rgba(255,255,255,.16);
  padding:26px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.delivery-metrics-ref .big{
  background:rgba(168,131,79,.18);
  border-color:rgba(168,131,79,.5);
}
.delivery-metrics-ref strong{
  display:block;
  font-size:64px;
  line-height:.9;
  font-weight:400;
  color:#fff;
}
.delivery-metrics-ref span{color:rgba(255,255,255,.7)}
.delivery-chain-ref{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
}
.delivery-chain-ref article{
  position:relative;
  min-height:240px;
  border:1px solid rgba(255,255,255,.16);
  padding:22px 18px;
}
.delivery-chain-ref b{
  display:grid;
  place-items:center;
  width:42px;height:42px;
  border:1px solid var(--gold);
  color:var(--gold);
  margin-bottom:22px;
}
.delivery-chain-ref h3{
  font-size:30px;
  line-height:1;
  font-weight:400;
  margin:0 0 10px;
  color:#fff;
}
.delivery-chain-ref p{color:rgba(255,255,255,.66);margin:0;font-size:14px}

@media (max-width:1260px){
  .custom-scope-ref-grid,
  .factory-gallery-ref,
  .mini-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .compare-stage{grid-template-columns:1fr}
  .compare-arrow{margin:auto;transform:rotate(90deg)}
  .proof-lane,
  .factory-flow-ref,
  .delivery-chain-ref{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pavilion-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .delivery-metrics-ref{grid-template-columns:repeat(2,minmax(0,1fr))}
  .modal-card{grid-template-columns:1fr}
  .modal-media{min-height:360px}
}
@media (max-width:860px){
  .v35-nav{gap:0}
  .custom-scope-ref-grid,
  .factory-gallery-ref,
  .mini-compare-grid,
  .proof-lane,
  .factory-flow-ref,
  .pavilion-wall,
  .delivery-metrics-ref,
  .delivery-chain-ref{grid-template-columns:1fr}
  .compare-card{min-height:440px}
  .compare-copy h3{font-size:34px}
  .modal-copy{padding:28px}
  .modal-copy h2{font-size:40px}
  .modal-media{min-height:280px}
}


/* =========================
   V36 dynamic custom comparison + lighter factory delivery module
   ========================= */

.dynamic-compare-v36{
  --compare-pos:52%;
  position:relative;
  min-height:650px;
  overflow:hidden;
  background:#111;
  border:1px solid rgba(0,0,0,.12);
  box-shadow:0 28px 88px rgba(32,22,12,.16);
  cursor:ew-resize;
  user-select:none;
  touch-action:none;
}

.dynamic-compare-v36 .compare-layer{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
}

.dynamic-compare-v36 .compare-layer::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.68));
}

.dynamic-compare-v36 .compare-before{
  filter:saturate(.72) brightness(.76);
}

.dynamic-compare-v36 .compare-after{
  clip-path:polygon(var(--compare-pos) 0,100% 0,100% 100%,var(--compare-pos) 100%);
  filter:saturate(1.08) brightness(.94);
}

.compare-divider-v36{
  position:absolute;
  z-index:5;
  top:0;
  bottom:0;
  left:var(--compare-pos);
  width:2px;
  transform:translateX(-1px);
  background:rgba(255,255,255,.9);
  box-shadow:0 0 0 1px rgba(0,0,0,.16), 0 0 34px rgba(0,0,0,.28);
  pointer-events:none;
}

.compare-divider-v36::before,
.compare-divider-v36::after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:1px;
  background:rgba(255,255,255,.55);
}

.compare-divider-v36::before{top:0;height:calc(50% - 46px)}
.compare-divider-v36::after{bottom:0;height:calc(50% - 46px)}

.compare-divider-v36 span{
  position:absolute;
  left:50%;
  top:50%;
  width:92px;
  height:92px;
  display:grid;
  place-items:center;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(245,238,226,.95);
  border:1px solid rgba(0,0,0,.14);
  color:#191613;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:700;
  box-shadow:0 18px 58px rgba(0,0,0,.28);
}

.compare-divider-v36 span::before{
  content:"‹";
  font-size:24px;
  margin-right:6px;
}

.compare-divider-v36 span::after{
  content:"›";
  font-size:24px;
  margin-left:6px;
}

.compare-range-v36{
  position:absolute;
  inset:0;
  z-index:8;
  width:100%;
  height:100%;
  opacity:0;
  cursor:ew-resize;
}

.compare-layer-copy{
  position:absolute;
  z-index:4;
  left:34px;
  bottom:34px;
  width:min(520px,calc(50% - 54px));
  color:#fff;
}
.compare-layer-copy H3{
        color: WHEAT !important;
}
.compare-layer-copy.after-copy{
  left:auto;
  right:34px;
  text-align:right;
}

.compare-layer-copy span{
  display:inline-block;
  margin-bottom:12px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--gold-2);
}

.compare-layer-copy h3{
  margin:0 0 12px;
  font-size:44px;
  line-height:.95;
  font-weight:400;
}

.compare-layer-copy p{
  margin:0;
  color:rgba(255,255,255,.72);
}

.compare-hints-v36{
  position:absolute;
  z-index:6;
  top:24px;
  left:24px;
  right:24px;
  display:flex;
  justify-content:space-between;
  pointer-events:none;
}

.compare-hints-v36 span{
  padding:8px 12px;
  background:rgba(0,0,0,.55);
  color:#fff;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.factory-delivery-ref-section{
  background:#f4efe7 !important;
  color:#191613 !important;
}

.delivery-intro-ref h2{
  color:#191613 !important;
}

.delivery-intro-ref p{
  color:#6f675b !important;
}

.delivery-metrics-ref>div{
  background:#fffaf2 !important;
  border-color:rgba(25,22,19,.12) !important;
  box-shadow:0 20px 60px rgba(35,25,14,.06);
}

.delivery-metrics-ref .big{
  background:linear-gradient(135deg,#efe1cc,#fffaf2) !important;
  border-color:rgba(168,131,79,.28) !important;
}

.delivery-metrics-ref strong{
  color:#191613 !important;
}

.delivery-metrics-ref span{
  color:#6f675b !important;
}

.delivery-chain-ref article{
  background:#fffaf2 !important;
  border-color:rgba(25,22,19,.12) !important;
  box-shadow:0 18px 54px rgba(35,25,14,.055);
}

.delivery-chain-ref h3{
  color:#191613 !important;
}

.delivery-chain-ref p{
  color:#6f675b !important;
}

.delivery-chain-ref b{
  background:#191613;
  color:#fff;
  border-color:#191613;
}

@media (max-width:900px){
  .dynamic-compare-v36{
    min-height:560px;
  }

  .compare-layer-copy,
  .compare-layer-copy.after-copy{
    left:22px;
    right:22px;
    width:auto;
    text-align:left;
  }

  .compare-layer-copy.after-copy{
    top:74px;
    bottom:auto;
  }

  .compare-layer-copy h3{
    font-size:34px;
  }

  .compare-divider-v36 span{
    width:76px;
    height:76px;
  }
}

@media (max-width:560px){
  .dynamic-compare-v36{
    min-height:600px;
  }

  .compare-layer-copy h3{
    font-size:30px;
  }

  .compare-layer-copy p{
    font-size:14px;
  }

  .compare-hints-v36{
    top:16px;
    left:16px;
    right:16px;
  }
}


/* =========================
   V37 custom title white + factory delivery dynamic effect
   ========================= */

/* Custom page: Before / After Customisation module title becomes white */
.custom-compare-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 20% 0%, rgba(168,131,79,.22), transparent 32%),
    linear-gradient(180deg,#14110e,#211a14) !important;
  color:#fff;
}

.custom-compare-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.025),transparent 36%,rgba(255,255,255,.02));
  pointer-events:none;
}

.custom-compare-section .container{
  position:relative;
  z-index:2;
}

.custom-compare-section .section-title,
.custom-compare-section .section-head h2{
  color:#fff !important;
}

.custom-compare-section .section-copy,
.custom-compare-section .section-head p{
  color:rgba(255,255,255,.68) !important;
}

.custom-compare-section .pf-kicker{
  color:#d8b77c;
}

.custom-compare-section .mini-compare-grid article{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.12);
}

.custom-compare-section .mini-compare-grid h3{
  color:#fff;
}

.custom-compare-section .mini-compare-grid p{
  color:rgba(255,255,255,.66);
}

/* Factory page: dynamic but soft light-background delivery section */
.factory-delivery-ref-section{
  position:relative;
  overflow:hidden;
}

.factory-delivery-ref-section::before{
  content:"";
  position:absolute;
  inset:-40%;
  background:
    radial-gradient(circle at 12% 28%, rgba(168,131,79,.18), transparent 24%),
    radial-gradient(circle at 78% 18%, rgba(168,131,79,.12), transparent 25%),
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,.46) 45%, transparent 62%);
  transform:translateX(-28%);
  animation:deliverySoftSweep 9s ease-in-out infinite alternate;
  pointer-events:none;
}

@keyframes deliverySoftSweep{
  from{transform:translateX(-28%) translateY(0)}
  to{transform:translateX(18%) translateY(3%)}
}

.factory-delivery-ref-section .container{
  position:relative;
  z-index:2;
}

.delivery-metrics-ref>div,
.delivery-chain-ref article{
  position:relative;
  overflow:hidden;
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease;
}

.delivery-metrics-ref>div::after{
  content:"";
  position:absolute;
  left:-80%;
  top:0;
  width:55%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(168,131,79,.13), transparent);
  transform:skewX(-18deg);
  animation:metricLightPass 5.8s ease-in-out infinite;
}

.delivery-metrics-ref>div:nth-child(2)::after{animation-delay:.6s}
.delivery-metrics-ref>div:nth-child(3)::after{animation-delay:1.2s}
.delivery-metrics-ref>div:nth-child(4)::after{animation-delay:1.8s}

@keyframes metricLightPass{
  0%, 38%{left:-80%}
  72%, 100%{left:130%}
}

.delivery-metrics-ref>div:hover,
.delivery-chain-ref article:hover{
  transform:translateY(-8px);
  box-shadow:0 26px 70px rgba(35,25,14,.12);
  border-color:rgba(168,131,79,.34) !important;
}

.delivery-chain-ref{
  position:relative;
}

.delivery-chain-ref::before{
  content:"";
  position:absolute;
  left:6%;
  right:6%;
  top:21px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(168,131,79,.38), transparent);
  transform-origin:left center;
  animation:deliveryLineGrow 3.2s ease-in-out infinite alternate;
}

@keyframes deliveryLineGrow{
  from{transform:scaleX(.28);opacity:.38}
  to{transform:scaleX(1);opacity:1}
}

.delivery-chain-ref article b{
  position:relative;
  z-index:2;
  transition:transform .3s ease, background .3s ease;
}

.delivery-chain-ref article:hover b{
  transform:scale(1.08);
  background:#a8834f;
  border-color:#a8834f;
}

@media (prefers-reduced-motion: reduce){
  .factory-delivery-ref-section::before,
  .delivery-metrics-ref>div::after,
  .delivery-chain-ref::before{
    animation:none;
  }

  .delivery-metrics-ref>div,
  .delivery-chain-ref article{
    transition:none;
  }
}


/* WordPress / Contact Form 7 compatibility layer */
body.admin-bar .site-header{top:32px}
.lishi-cf7-placeholder{
  border:1px dashed rgba(168,131,79,.45);
  background:rgba(168,131,79,.08);
  padding:22px;
  color:inherit;
}
.lishi-cf7-placeholder strong{display:block;margin-bottom:8px}
.cf7-theme-form .wpcf7 form{
  display:grid;
  gap:16px;
}
.cf7-theme-form .wpcf7 input,
.cf7-theme-form .wpcf7 textarea,
.cf7-theme-form .wpcf7 select{
  width:100%;
  border:1px solid var(--line, rgba(0,0,0,.12));
  background:transparent;
  color:inherit;
  padding:14px 16px;
}
.cf7-theme-form .wpcf7-submit{
  width:auto;
  min-width:180px;
  border-color:var(--gold, #a8834f);
  background:var(--gold, #a8834f);
  color:#fff;
  cursor:pointer;
}
.screen-reader-text{
  border:0;
  clip:rect(1px,1px,1px,1px);
  clip-path:inset(50%);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute!important;
  width:1px;
  word-wrap:normal!important;
}


/* WP V3 customizer image override support */
.page-hero[style*="--hero-bg"]::after{background-image:var(--hero-bg)!important;}
.design-company-section{
padding:100px 0;
}


.design-service-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:45px;

margin-top:60px;

}


.design-service-card{

text-align:center;

}



.design-service-image{

height:360px;

overflow:hidden;

}


.design-service-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}



.design-service-card:hover img{

transform:scale(1.05);

}



.design-service-content{

padding-top:30px;

}



.design-service-content h3{

font-size:34px;

font-weight:400;

margin-bottom:20px;

}



.design-service-content p{

max-width:330px;

margin:0 auto;

font-size:15px;

line-height:1.8;

color:#666;

}



.design-service-content a{

display:inline-block;

margin-top:25px;

font-size:13px;

letter-spacing:2px;

border-bottom:1px solid #222;

padding-bottom:8px;

}

@media(max-width:768px){

    .section {
        padding: 34px 0;
    }

.design-service-grid{

grid-template-columns:1fr;

}
.design-company-section .section-title{
    width: 100% !important;
    text-transform: uppercase;
}
.design-company-section .pf-kicker{
    width:100% !important;
}
.design-company-section .section-copy{
    width:100% !important;
}
}
.design-company-section .section-head{
    text-align: center;
}
.design-company-section .section-title{
    width: 50%;
    text-transform: uppercase;
}
.design-company-section .pf-kicker{
    width:25%;
}
.design-company-section .section-copy{
    width:25%;
}
.lishi-furniture-product-image img{display: block !important;}