
/* =========================================================
   MD FABRICS V3.3 — MOBILE-FIRST CUSTOMER EXPERIENCE
   Primary target: smartphones
   ========================================================= */

/* ---------- MOBILE DEFAULT ---------- */
:root{
  --mobile-pad:18px;
  --mobile-radius:20px;
}
html{-webkit-text-size-adjust:100%;scroll-padding-top:78px}
body{min-width:320px}
.container{width:calc(100% - 36px);max-width:1200px;margin-inline:auto}

/* Header */
.site-header{height:70px}
.header-inner{min-height:70px}
.brand{min-width:0}
.brand-mark{flex:0 0 auto}
.brand-copy small{display:none}
.header-cta{display:none!important}
.menu-toggle{
  display:flex!important;width:46px;height:46px;flex-direction:column;
  justify-content:center;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.15);
  border-radius:50%;background:rgba(20,19,16,.82);backdrop-filter:blur(14px);z-index:1002
}
.menu-toggle span{display:block;width:18px;height:1px;background:#fff;transition:.25s}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.main-nav{
  position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;
  background:#11100e!important;display:flex!important;flex-direction:column!important;
  align-items:flex-start!important;justify-content:flex-start!important;gap:0!important;
  padding:95px 22px 110px!important;overflow-y:auto;z-index:1000;
  transform:translateX(100%);opacity:0;visibility:hidden;transition:transform .28s ease,opacity .2s ease,visibility .2s
}
.main-nav.open{transform:translateX(0);opacity:1;visibility:visible}
.main-nav a{
  width:100%;font:500 28px/1.15 Manrope!important;letter-spacing:-.035em!important;
  color:#eee9df!important;padding:14px 2px!important;border-bottom:1px solid #2c2923
}
.main-nav a.active{color:#c5a45c!important}
body.menu-open{overflow:hidden}

/* Typography & sections */
.section{padding:76px 0}
.eyebrow{font-size:9px;letter-spacing:.15em}
.section-head{display:block!important;margin-bottom:38px!important}
.section-head h2{font-size:clamp(42px,13vw,62px)!important;line-height:.94!important}
.section-head>p,.section-head .muted{max-width:none!important;margin-top:18px!important;font-size:14px!important}
.copy{font-size:14px}
.btn{min-height:50px;padding:14px 18px;display:inline-flex;align-items:center;justify-content:center}

/* Homepage */
.home-v3 main>section:first-child{min-height:720px}
.home-v3 main>section:first-child h1{font-size:clamp(58px,17vw,82px)!important;line-height:.87!important}
.v3-trust-strip .container{width:100%;grid-template-columns:1fr 1fr}
.v3-trust-strip .container>div{padding:17px 18px}
.v3-trust-strip strong{font-size:13px}
.v3-trust-strip span{font-size:8px;line-height:1.4}
.home-process-head{grid-template-columns:1fr!important;gap:20px!important}
.home-process-head h2{font-size:55px!important}
.home-process-steps{
  margin:35px 0 28px!important;display:grid!important;grid-template-columns:1fr!important;
  gap:0!important;border:0!important;padding:0!important;overflow:visible!important
}
.home-process-steps span{
  min-height:58px;display:flex;align-items:center;border-top:1px solid #34312a;
  font-size:12px!important
}
.home-process-steps span:last-of-type{border-bottom:1px solid #34312a}
.home-process-steps i{display:none}
.v3-final-cta{padding:82px 0}
.v3-final-cta h2{font-size:55px!important}
.v3-final-actions{display:grid!important;grid-template-columns:1fr!important}
.v3-final-actions .btn{width:100%}

/* Stock: structure first */
.product-list{display:block!important}
.product-row{
  display:flex!important;flex-direction:column!important;gap:0!important;margin-bottom:24px!important;
  border:1px solid var(--line);border-radius:var(--mobile-radius);overflow:hidden;background:#fff
}
.product-row>*{width:100%!important}
.fabric-structure-photo{
  order:1!important;width:100%!important;min-height:0!important;aspect-ratio:4/3!important;
  border-radius:0!important;margin:0!important
}
.fabric-structure-photo img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover}
.product-info,.product-copy,.product-content{order:2!important;padding:22px!important}
.product-row h2,.product-row h3{font-size:32px!important;line-height:1!important}
.structure-note{margin:0 0 30px!important}

/* Cards/grids */
.about-values,.about-lines,.contact-detail-grid,.finish-options{grid-template-columns:1fr!important}
.about-value,.contact-detail{min-height:auto!important}
.about-number-grid{grid-template-columns:1fr 1fr!important}
.gallery-grid{grid-template-columns:1fr!important}
.gallery-grid>*{grid-column:auto!important}
.stock-grid,.category-grid,.fabric-grid{grid-template-columns:1fr!important}

/* Process */
.process-hero{min-height:720px;padding:135px 0 65px}
.process-hero h1{font-size:65px!important}
.process-lead{font-size:15px}
.process-disclosure{align-items:flex-start}
.process-route{display:grid!important;grid-template-columns:1fr!important;gap:0!important;border:0!important}
.process-route span{padding:17px 0;border-top:1px solid var(--line)}
.process-route span:last-of-type{border-bottom:1px solid var(--line)}
.process-route i{display:none}
.process-stage{padding:82px 0}
.process-stage-grid{grid-template-columns:1fr!important;gap:25px!important}
.process-stage-grid.reverse>*{order:initial!important}
.process-number{font-size:40px!important}
.process-copy h2{font-size:50px!important}
.process-video-placeholder{min-height:280px!important}
.finish-card{min-height:auto!important}
.result-grid{grid-template-columns:1fr!important;gap:30px!important}

/* About/contact */
.about-hero{min-height:690px;padding:130px 0 70px}
.about-hero-inner{grid-template-columns:1fr!important}
.about-hero h1{font-size:59px!important}
.about-photo,.contact-photo{height:540px}
.contact-hero{min-height:730px;padding:135px 0 70px}
.contact-hero-inner{grid-template-columns:1fr!important;gap:38px!important}
.contact-hero h1{font-size:61px!important}
.contact-hero-actions{grid-template-columns:1fr!important}
.contact-map-band .container{grid-template-columns:1fr!important;gap:35px!important}
.map-pin-art{height:270px!important}
.fabric-form{grid-template-columns:1fr!important}
.form-wide{grid-column:auto!important}
.form-field input,.form-field select,.form-field textarea{font-size:16px!important} /* stops iOS zoom */
.form-submit{flex-direction:column;align-items:stretch!important}
.form-submit .btn{width:100%}

/* Footer */
.footer-grid{grid-template-columns:1fr!important;gap:38px!important}
footer{padding-bottom:110px}
footer a{min-height:30px;display:flex;align-items:center}

/* Permanent mobile WhatsApp action */
.wa-float{
  position:fixed!important;right:16px!important;bottom:16px!important;width:auto!important;height:52px!important;
  min-width:108px!important;border-radius:99px!important;padding:0 18px!important;z-index:900!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  font:700 11px Manrope!important;letter-spacing:.06em!important
}
.wa-float::after{content:"HATSAPP";margin-left:1px}

/* Prevent accidental overflow */
img,video,iframe,svg{max-width:100%}
h1,h2,h3,p,a{overflow-wrap:break-word}

/* ---------- TABLET / DESKTOP EXPANSION ---------- */
@media(min-width:760px){
  .container{width:min(calc(100% - 56px),1200px)}
  .section{padding:105px 0}
  .brand-copy small{display:block}
  .product-row{display:grid!important;flex-direction:initial!important;border-radius:26px}
  .fabric-structure-photo{aspect-ratio:auto!important;min-height:400px!important}
  .gallery-grid{grid-template-columns:repeat(2,1fr)!important}
  .v3-final-actions{display:flex!important}
}
@media(min-width:1050px){
  html{scroll-padding-top:105px}
  .site-header{height:auto}
  .header-inner{min-height:86px}
  .menu-toggle{display:none!important}
  .header-cta{display:inline-flex!important}
  .main-nav{
    position:static!important;inset:auto!important;width:auto!important;height:auto!important;
    background:transparent!important;display:flex!important;flex-direction:row!important;
    align-items:center!important;justify-content:center!important;gap:18px!important;padding:0!important;
    overflow:visible!important;transform:none!important;opacity:1!important;visibility:visible!important
  }
  .main-nav a{
    width:auto!important;font:600 10px/1 Inter!important;letter-spacing:.02em!important;
    color:inherit!important;padding:10px 0!important;border:0!important
  }
  .main-nav a.active{color:var(--gold)!important}
  .section{padding:130px 0}
  .gallery-grid{grid-template-columns:repeat(3,1fr)!important}
  .wa-float{width:52px!important;min-width:52px!important;padding:0!important}
  .wa-float::after{content:""}
}
