/* DISTRi / visual system v2
   One typographic rhythm, predictable grids, real product photography.
   Intentionally loaded AFTER styles.css to preserve existing interactions.
*/
:root{
  --ink:#1b2d48;
  --ink-2:#30435d;
  --blue:#2458ef;
  --blue-light:#eef3ff;
  --muted:#667790;
  --line:#e2e8f0;
  --paper:#f5f7fb;
  --white:#fff;
  --font:'DM Sans',system-ui,-apple-system,sans-serif;
  --display:'Manrope',system-ui,-apple-system,sans-serif;
  --ui-radius:12px;
  --ui-radius-lg:18px;
  --ui-shadow:0 12px 34px rgba(20,43,77,.07);
  --ui-container:1280px;
}
html{scroll-padding-top:20px}
body{font-size:14px;line-height:1.58;color:var(--ink);background:#fff}
button,input,select,textarea{font-family:var(--font)}
button,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:3px solid #8ba9ff;outline-offset:3px
}
.shell{width:min(var(--ui-container),calc(100% - 64px));margin-inline:auto}
h1,h2,h3{overflow-wrap:break-word}
.button{min-height:46px;padding:12px 19px;font-size:13px;letter-spacing:-.01em;border-radius:9px;line-height:1.3;gap:10px}
.button:hover{transform:translateY(-1px)}
.button-primary,.card-bottom button{background:#2458ef}
.button-primary:hover,.card-bottom button:hover{background:#1746c9}
.section-kicker{font-size:11px;letter-spacing:.13em;font-weight:800}
.section-heading h2,.how-header h2,.cta-panel h2{
  font:800 clamp(26px,2.7vw,35px)/1.24 var(--display);
  letter-spacing:-.045em
}
.section-heading{align-items:end;gap:24px;margin-bottom:26px}
.section-heading p{color:var(--muted);font-size:14px;line-height:1.7}
.section-link{font-size:13px;line-height:1.4;white-space:nowrap}
.section-link svg{flex:none}
.announcement{font-size:11px;letter-spacing:.025em}
.announcement-inner{min-height:34px;height:auto;padding-block:6px;gap:20px}
.header-primary{height:88px;gap:32px}
.brand{min-width:196px;gap:12px}
.brand>span{letter-spacing:-.065em}
.brand small{font-size:9px;letter-spacing:.09em}
.header-search{max-width:590px;height:48px;border-radius:10px;background:#f7f9fd;padding:4px 5px 4px 16px}
.header-search input{font-size:13px}
.header-search input::placeholder{color:#79889c}
.header-search button{height:38px;border-radius:7px;padding-inline:18px;font-size:12px}
.header-actions{gap:16px}
.header-assistance strong{font-size:13px}
.header-assistance small{font-size:11px}
.quote-trigger{height:46px;border-radius:10px;padding-inline:15px;font-size:12px}
.header-nav{background:#fff}
.nav-inner{gap:clamp(16px,1.9vw,29px);height:53px}
.nav-inner>a{font-size:12px;line-height:1.3;letter-spacing:-.005em}
.nav-inner .nav-catalog{margin-right:0;gap:9px}
.nav-caption{font-size:11px;line-height:1.3}
.hero-editorial{
  display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  min-height:515px;height:auto;margin-top:20px;border-radius:var(--ui-radius-lg);
  background:linear-gradient(112deg,#14263f 0%,#1d3653 47%,#295773 100%);
  overflow:hidden;isolation:isolate
}
.hero-editorial .hero-pattern{background:radial-gradient(circle at 78% 47%,#7ca8c7 0,transparent 46%);opacity:.18;z-index:0}
.hero-editorial .hero-copy{
  width:100%;max-width:none;padding:64px 18px 54px 60px;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0
}
.hero-editorial .eyebrow{letter-spacing:.12em;font-size:10px;color:#c4deef}
.hero-editorial h1{
  font:800 clamp(38px,3.65vw,54px)/1.13 var(--display);
  letter-spacing:-.052em;max-width:535px;margin:21px 0 18px;
  overflow-wrap:normal
}
.hero-editorial h1 em{color:#a9d8ed}
.hero-editorial .hero-copy>p{font-size:14px;line-height:1.77;color:#d6e3ed;max-width:470px}
.hero-editorial .hero-actions{margin-top:29px;gap:11px;flex-wrap:wrap}
.hero-editorial .button-ghost{border-color:#d3e4f04c}
.hero-editorial .hero-catalog-trust{margin-top:31px;line-height:1.6;font-size:11px;color:#c6d9e8}
.hero-showcase{
  width:100%;min-height:0;height:auto;
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);
  grid-template-rows:repeat(2,minmax(0,1fr));
  padding:42px 42px 42px 12px;gap:14px;align-self:stretch
}
.hero-showcase-glow,.hero-showcase-orbit{pointer-events:none}
.hero-product,.hero-product-main,.hero-product-mini,.hero-product-top,.hero-product-bottom{
  position:relative;inset:auto;left:auto;top:auto;bottom:auto;right:auto;
  width:auto;height:auto;min-width:0;min-height:0;transform:none;border:1px solid #ffffffb0;
  border-radius:14px;box-shadow:0 16px 40px #0a1f3452;
  background:#fff;padding:8px;transition:box-shadow .18s,transform .18s
}
.hero-product-main{grid-column:1;grid-row:1/3;z-index:2}
.hero-product-top{grid-column:2;grid-row:1;z-index:2}
.hero-product-bottom{grid-column:2;grid-row:2;z-index:2}
.hero-product:hover,.hero-product-main:hover,.hero-product-top:hover,.hero-product-bottom:hover{
  transform:translateY(-3px);box-shadow:0 20px 38px #0a1f3470
}
.hero-photo-stage,.hero-mini-stage{
  background:#f5f7fa;min-height:0;flex:1;border-radius:9px;
  display:grid;place-items:center;overflow:hidden
}
.hero-photo-stage>.product-photo,.hero-mini-stage>.product-photo{padding:12px;object-fit:contain;background:#f5f7fa}
.hero-photo-caption{padding:11px 9px 9px;gap:5px}
.hero-photo-caption>small{font-size:10px;letter-spacing:.08em;color:#55718e}
.hero-photo-caption strong{font:800 15px/1.35 var(--display);letter-spacing:-.02em}
.hero-photo-caption>span{font-size:10px;color:#37658a;font-weight:800}
.hero-mini-caption{padding:8px 5px 4px}
.hero-mini-caption strong{font:800 11px/1.4 var(--display);letter-spacing:-.018em}
.hero-mini-caption small{font-size:10px;color:#65819a}
.benefits{background:#fff;border-bottom:1px solid var(--line)}
.benefits-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:29px 0}
.benefit{gap:14px;min-width:0}
.benefit:not(:last-child){border-right:1px solid var(--line)}
.benefit-icon{width:46px;height:46px;min-width:46px;border-radius:12px;background:#edf2ff}
.benefit strong{font-size:13px;line-height:1.35;font-weight:800}
.benefit small{font-size:12px;line-height:1.55;color:var(--muted);margin-top:4px}
.categories-section{padding:74px 0 83px}
.categories-row{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;gap:18px
}
.category-tile{
  display:flex;flex-direction:column;min-width:0;height:100%;
  border-radius:var(--ui-radius);border:1px solid var(--line);
  background:#fff;box-shadow:0 2px 10px #1d355008;
  transition:transform .18s,border-color .18s,box-shadow .18s
}
.category-tile:hover,.category-tile.selected{transform:translateY(-2px);border-color:#a7bdf0;box-shadow:var(--ui-shadow)}
.category-visual{height:185px;flex:none;background:#f4f7fa!important}
.category-visual>.product-photo{padding:18px 24px;object-fit:contain;background:#f4f7fa}
.category-sku{top:12px;left:12px;padding:5px 8px;font-size:9px;color:#4c6280;letter-spacing:.045em}
.category-label{font:800 15px/1.35 var(--display);letter-spacing:-.025em;padding:18px 17px 6px;min-height:auto}
.category-label span{min-width:0}
.category-label svg{flex:none}
.category-teaser{font-size:12px;line-height:1.55;color:var(--muted);padding:3px 17px 9px;min-height:49px}
.category-foot{font-size:11px;line-height:1.5;color:#315fa2;margin-top:auto;padding:10px 17px 19px;font-weight:800}
.catalog-section{background:#f5f7fb;padding:73px 0 87px;scroll-margin-top:14px}
.catalog-layout{display:grid;grid-template-columns:252px minmax(0,1fr);align-items:start;gap:24px}
.filters{padding:23px 21px;border:1px solid var(--line);border-radius:var(--ui-radius);box-shadow:0 2px 12px #28445d05}
.filter-title{padding-bottom:18px}
.filter-title strong{font:800 16px/1.3 var(--display)}
.filter-clear{font-size:12px}
.filter-group{padding:22px 0}
.filter-group h3{font-size:13px;line-height:1.3;margin-bottom:17px}
.filter-options{gap:14px}
.filter-choice{font-size:12px;min-height:23px;gap:10px;color:#56677f}
.filter-choice input{width:17px;height:17px}
.filter-choice input:checked:after{font-size:12px}
.filter-choice small{font-size:11px;color:#7c8ba2}
.filter-banner{padding:20px;margin-top:23px;border-radius:10px}
.filter-banner strong{font-size:15px;line-height:1.45}
.filter-banner small{font-size:12px;line-height:1.55}
.catalog-heading{margin-bottom:29px}
.catalog-heading p{margin:11px 0 0}
.catalog-toolbar{
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;
  gap:14px;margin-bottom:21px;min-height:44px
}
.catalog-toolbar strong{font-size:14px}
.catalog-toolbar small{font-size:12px;color:#7b8aa0;line-height:1.5;margin-top:3px}
.toolbar-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.sort-label{font-size:12px;color:#596f88;white-space:nowrap}
.toolbar-actions select{height:42px;border-radius:8px;padding:0 27px 0 12px;font-size:12px;color:#304860}
.view-toggle{width:42px;height:42px;border-radius:8px}
.active-filters{margin:0 0 18px;gap:8px}
.filter-chip{font-size:11px;min-height:34px;padding:7px 12px}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:stretch}
.product-card{
  display:flex;flex-direction:column;height:100%;
  border:1px solid #e1e8f0;border-radius:var(--ui-radius);
  box-shadow:0 2px 9px #192d4808;transition:border-color .18s,box-shadow .18s,transform .18s
}
.product-card:hover{transform:translateY(-2px);border-color:#c7d5e9;box-shadow:var(--ui-shadow)}
.card-art,.card-art.tone-0,.card-art.tone-1,.card-art.tone-2,.card-art.tone-3{
  position:relative;height:auto;aspect-ratio:1.33;
  background:#f4f7fa!important;overflow:hidden;cursor:pointer
}
.card-art>.product-photo{padding:20px 20px 14px;background:#f4f7fa;object-fit:contain}
.card-tag{top:12px;left:12px;max-width:calc(100% - 54px);border-radius:5px;padding:6px 9px;font-size:10px;box-shadow:none;color:#38516e}
.card-quick{width:40px;height:40px;bottom:12px;right:12px}
.card-content{display:flex;flex:1;flex-direction:column;min-height:246px;padding:17px 18px 17px}
.card-sku{font-size:11px;font-weight:800;color:#74869c;letter-spacing:.035em}
.card-content h3{
  font:800 15px/1.42 var(--display);letter-spacing:-.022em;
  min-height:43px;max-height:43px;margin:7px 0 9px;overflow:hidden;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2
}
.product-title-button{font:inherit;letter-spacing:inherit;line-height:inherit}
.card-material{font-size:12px;color:#718197;line-height:1.45;min-height:20px}
.card-swatches{display:flex;align-items:center;align-content:flex-start;flex-wrap:wrap;gap:6px;min-height:33px;max-height:54px;overflow:hidden;margin:12px 0 14px}
.card-variant-chip{padding:5px 8px;font-size:10px;min-height:23px;border-radius:14px}
.card-bottom{margin-top:auto;align-items:center;gap:8px;padding-top:14px;min-height:54px}
.card-bottom small{font-size:11px;line-height:1.42;color:#76869b;max-width:100px}
.card-bottom button{
  min-height:40px;border-radius:8px;padding:11px 12px;
  font:800 11px/1.25 var(--display);white-space:nowrap;gap:7px
}
.catalog-pager{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:11px;padding:29px 0 6px;text-align:center
}
.catalog-pager[hidden]{display:none}
.catalog-pager-info{color:var(--muted);font-size:12px;line-height:1.5}
.catalog-pager-button{min-width:196px;border-radius:9px}
.catalog-bottom{font-size:12px;line-height:1.7;color:#71829a;max-width:700px;margin:20px auto 0}
.product-grid.list-mode{grid-template-columns:1fr}
.list-mode .product-card{min-height:230px;display:grid;grid-template-columns:230px minmax(0,1fr)}
.list-mode .card-art{height:100%;aspect-ratio:auto;min-height:220px;width:230px;min-width:0}
.list-mode .card-content{min-height:220px}
.list-mode .card-content h3{min-height:auto;max-height:none;-webkit-line-clamp:3}
.list-mode .card-bottom{margin-top:auto}
.how-section{padding:80px 0}
.how-header{gap:40px}
.how-header>p{font-size:14px;line-height:1.7;color:var(--muted)}
.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.step{min-height:240px;border-radius:var(--ui-radius);padding:29px}
.step h3{font-size:17px;line-height:1.4;margin:27px 0 10px}
.step p{font-size:13px;line-height:1.7;color:var(--muted)}
.step-icon{width:48px;height:48px;border-radius:12px}
.cta-section{padding-bottom:83px}
.cta-panel{min-height:265px;border-radius:var(--ui-radius-lg);padding:45px 50px;background:#e9f0ff;gap:25px}
.cta-panel h2{font-size:30px;line-height:1.25}
.cta-panel p{font-size:13px;line-height:1.7;color:#61748d;max-width:470px}
.cta-panel>.button{margin-right:185px;flex:none}
.cta-art{right:24px;bottom:-10px;opacity:1;transform:none}
.footer{background:#172945}
.footer-upper{grid-template-columns:1.65fr .9fr 1.1fr 1.25fr;gap:40px;padding:59px 0 54px}
.footer-upper>div>p{font-size:13px;line-height:1.75}
.footer-upper strong{font-size:13px;line-height:1.4}
.footer-upper a:not(.brand),.footer-upper span{font-size:12px;line-height:1.6}
.footer-bottom{min-height:66px;height:auto;gap:20px;padding-block:14px;font-size:12px}
.overlay{background:#111e38ae;backdrop-filter:blur(5px)}
.icon-btn{height:42px;width:42px;border-radius:10px}
.drawer{width:min(450px,100%);max-width:none;box-shadow:-16px 0 56px #061b3438}
.drawer-top{padding:25px 26px 21px}
.drawer-top h2{font-size:23px}
.drawer-body{padding:21px 26px}
.drawer-intro{font-size:13px;line-height:1.7;color:#61738b}
.drawer-bottom{padding:19px 26px 26px}
.drawer-warning{font-size:12px;line-height:1.55;padding:13px 15px;border-radius:9px;color:#596b80}
.plain-button{font-size:12px;min-height:32px;margin-top:8px;color:#4e6b8f}
.quote-item{gap:13px;align-items:flex-start;padding:16px 0}
.quote-image{width:92px;min-width:92px;height:92px;overflow:hidden;border-radius:10px}
.quote-image>.product-photo{padding:10px}
.quote-info h3{font-size:14px;line-height:1.45;margin-top:0}
.quote-info small{font-size:11px;line-height:1.5;color:#71819a}
.quote-row{gap:10px}
.counter{border-radius:8px}
.counter button{min-width:34px;min-height:32px}
.product-dialog{width:min(1080px,calc(100vw - 32px));max-width:none;max-height:92dvh;border-radius:var(--ui-radius-lg);box-shadow:0 30px 100px #0c1e365c}
.dialog-with-gallery{grid-template-columns:minmax(0,53%) minmax(0,47%);align-items:start}
.dialog-with-gallery .dialog-media{padding:26px 22px;background:#f3f7fb}
.gallery-viewer{height:390px;border-radius:12px;background:#fff;border:1px solid #e8edf3}
.gallery-zoom{padding:20px}
.gallery-main-img{object-fit:contain}
.gallery-viewer .gallery-prev,.gallery-viewer .gallery-next{height:42px;width:42px}
.gallery-info{font-size:12px;gap:12px}
.gallery-thumbnails{gap:9px;scroll-padding-inline:6px}
.gallery-thumbnails .gallery-thumb{flex-basis:80px;min-width:80px;max-width:80px;border-radius:10px}
.gallery-thumbnails .gallery-thumb img{height:64px}
.gallery-credit{font-size:11px;line-height:1.6}
.dialog-with-gallery .dialog-details{padding:42px 32px 35px;min-width:0}
.dialog-with-gallery .dialog-details h2{font:800 26px/1.32 var(--display);letter-spacing:-.035em}
.dialog-description{font-size:13px;line-height:1.75;color:#66788f}
.product-meta-line{font-size:11px}
.variant-title{font-size:13px;line-height:1.4}
.variant-title small{font-size:11px}
.variant-list .variant-options{gap:8px}
.variant-chip{min-height:44px;border-radius:12px;font-size:12px;line-height:1.35;padding:9px 12px}
.variant-photo-status{font-size:10px}
.variant-hint{font-size:11px;line-height:1.65}
.spec-table{border-radius:10px;border-color:var(--line)}
.spec-row{font-size:12px;line-height:1.55;padding:10px 13px;gap:15px}
.spec-row>span:first-child{color:#687a92}
.spec-row>span:last-child{color:#29425c;font-weight:700}
.modal-order-actions{margin-top:22px;gap:11px}
.modal-order-actions .button{width:100%;white-space:normal}
.product-qty-picker{font-size:12px}
.product-qty-picker button{width:44px;height:42px}
.product-qty-picker input{height:42px}
.checkout-dialog{
  width:min(980px,calc(100vw - 32px));max-height:92dvh;
  padding:35px;border-radius:var(--ui-radius-lg)
}
.checkout-header{padding:0 38px 24px 0}
.checkout-header h2{font:800 27px/1.28 var(--display)}
.checkout-header p{font-size:13px;line-height:1.7;color:#66788f}
.checkout-layout{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:28px;padding-top:26px}
.checkout-form{gap:16px}
.checkout-form label{font-size:12px;line-height:1.5;gap:7px;font-weight:800}
.checkout-form input,.checkout-form textarea{font:500 13px/1.5 var(--font);padding:12px 13px;border-radius:9px;min-height:44px}
.checkout-form textarea{min-height:104px}
.checkout-privacy{font-size:11px;line-height:1.65;color:#62748b}
.checkout-review{padding:22px;border-radius:12px;background:#f6f8fc;position:sticky;top:12px}
.checkout-review h3{font-size:15px}
.checkout-line strong{font-size:12px;line-height:1.5}
.checkout-line small,.checkout-line span{font-size:11px}
.checkout-result{border-radius:12px}
.checkout-result textarea{font-size:12px;line-height:1.6}
.checkout-result-actions .button{min-height:45px}
.toast{font-size:13px;line-height:1.5}
@media(max-width:1200px){
  .shell{width:calc(100% - 56px)}
  .header-primary{gap:22px}
  .nav-inner{gap:17px}
  .nav-caption{display:none}
  .hero-editorial .hero-copy{padding-left:46px}
  .hero-editorial h1{font-size:clamp(35px,4vw,48px)}
  .hero-showcase{padding:35px 27px 35px 8px;gap:11px}
  .catalog-layout{grid-template-columns:230px minmax(0,1fr);gap:20px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card-art{aspect-ratio:1.35}
  .footer-upper{gap:27px}
}
@media(max-width:980px){
  .header-assistance{display:none}
  .nav-inner{gap:14px}
  .nav-inner>a{font-size:11px}
  .catalog-layout{display:block}
  .filters{
    display:block;position:fixed;left:0;top:0;bottom:0;overflow-y:auto;z-index:90;
    width:min(365px,90vw);height:100dvh;max-height:100dvh;
    border-radius:0 16px 16px 0;box-shadow:18px 0 50px #0c23452b;
    transform:translateX(-110%);transition:transform .25s;visibility:hidden
  }
  .filters.mobile-open{transform:translateX(0);visibility:visible}
  .mobile-filter-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;height:42px;padding:0 14px;border-radius:8px;font-size:12px;font-weight:800;color:#244d86}
  .mobile-filter-trigger svg{width:16px;height:16px}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .steps{gap:12px}
  .step{padding:23px}
}
@media(max-width:820px){
  .shell{width:calc(100% - 40px)}
  .header-primary{height:80px;gap:15px}
  .brand{min-width:150px}
  .brand>span{font-size:25px}
  .brand small{font-size:8px}
  .quote-trigger{padding-inline:12px}
  .nav-inner>a{font-size:11px}
  .hero-editorial{grid-template-columns:1fr;min-height:0;height:auto}
  .hero-editorial .hero-copy{padding:44px 40px 16px;min-height:310px}
  .hero-editorial h1{font-size:clamp(38px,6vw,50px);max-width:640px}
  .hero-editorial .hero-copy>p{max-width:650px}
  .hero-showcase{
    width:100%;height:380px;min-height:380px;
    padding:6px 40px 35px;
    grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px
  }
  .benefits-grid{gap:13px}
  .benefit{gap:10px}
  .benefit-icon{width:42px;height:42px;min-width:42px}
  .benefit strong{font-size:12px}
  .benefit small{font-size:11px}
  .categories-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .category-visual{height:196px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-toolbar{align-items:flex-start}
  .cta-panel{padding:37px 34px}
  .cta-panel>.button{margin-right:120px}
  .cta-art{right:-20px}
  .footer-upper{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px;padding:48px 0}
  .dialog-with-gallery{grid-template-columns:minmax(0,49%) minmax(0,51%)}
  .dialog-with-gallery .dialog-media{padding:20px 13px}
  .dialog-with-gallery .dialog-details{padding:31px 24px}
  .gallery-viewer{height:350px}
  .checkout-layout{gap:20px}
}
@media(max-width:650px){
  .shell{width:calc(100% - 32px)}
  .announcement-inner{height:30px;min-height:30px;justify-content:center}
  .announcement-inner>span:first-child{font-size:10px;text-align:center}
  .announcement-right{display:none}
  .header-primary{height:74px;gap:11px}
  .brand{min-width:0;gap:8px}
  .brand img{height:35px;width:35px}
  .brand>span{font-size:23px}
  .brand small{font-size:7px;letter-spacing:.06em}
  .header-actions{gap:7px}
  .quote-trigger{height:43px;width:43px;border:1px solid var(--line);border-radius:10px;padding:0;justify-content:center}
  .quote-count{top:-3px;right:-3px;min-width:19px;height:19px;font-size:10px}
  .mobile-menu-trigger{display:grid;place-items:center;height:43px;width:43px;border:1px solid var(--line);border-radius:10px;background:#fff}
  .header-search{position:absolute;top:74px;left:16px;right:16px;height:45px;padding:3px 4px 3px 13px;border-radius:9px}
  .header-search input{font-size:12px}
  .header-search button{height:37px;min-width:38px;padding:0 8px;font-size:0}
  .header-nav{margin-top:55px}
  .nav-inner{display:none;height:auto;gap:0;padding:7px 0 13px;flex-direction:column;align-items:stretch}
  .header-nav.mobile-open .nav-inner{display:flex}
  .nav-inner>a{font-size:13px;min-height:44px;padding:12px 7px;display:flex;align-items:center;border-bottom:1px solid #edf1f5}
  .nav-inner .nav-catalog{margin-right:0}
  .nav-caption{display:none}
  .hero-editorial{margin-top:15px;border-radius:16px;min-height:0}
  .hero-editorial .hero-copy{min-height:0;padding:34px 24px 0}
  .hero-editorial .eyebrow{font-size:9px;letter-spacing:.1em;gap:7px}
  .hero-editorial h1{font-size:clamp(32px,8.25vw,43px);line-height:1.15;letter-spacing:-.052em;margin:17px 0 12px}
  .hero-editorial .hero-copy>p{font-size:13px;line-height:1.73;max-width:none}
  .hero-editorial .hero-actions{margin-top:21px;gap:9px}
  .hero-editorial .button{min-height:43px;font-size:11px;padding:11px 12px}
  .hero-editorial .hero-catalog-trust{margin-top:17px;font-size:10px;gap:6px}
  .hero-showcase{
    min-height:315px;height:315px;width:100%;padding:15px 20px 24px;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:9px
  }
  .hero-product,.hero-product-main,.hero-product-mini{border-radius:11px;padding:5px}
  .hero-photo-stage,.hero-mini-stage{border-radius:7px}
  .hero-photo-stage>.product-photo,.hero-mini-stage>.product-photo{padding:8px}
  .hero-photo-caption{padding:8px 5px 6px;gap:4px}
  .hero-photo-caption>small{font-size:8px}
  .hero-photo-caption strong{font-size:11px;line-height:1.35}
  .hero-photo-caption>span{font-size:9px}
  .hero-mini-caption{padding:6px 3px 4px;gap:2px}
  .hero-mini-caption strong{font-size:9px}
  .hero-mini-caption small{font-size:8px}
  .benefits-grid{grid-template-columns:1fr;gap:0;padding:13px 0}
  .benefit{padding:11px 0;gap:13px}
  .benefit:not(:last-child){border-right:0;border-bottom:1px solid var(--line)}
  .benefit-icon{width:41px;height:41px;min-width:41px}
  .benefit strong{font-size:12px}
  .benefit small{font-size:11px}
  .categories-section{padding:50px 0 55px}
  .section-heading{align-items:start;gap:13px;margin-bottom:21px;flex-wrap:wrap}
  .section-heading h2,.how-header h2{font-size:27px;line-height:1.23}
  .section-link{font-size:11px;margin:0}
  .section-kicker{font-size:10px}
  .categories-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
  .category-visual{height:146px}
  .category-visual>.product-photo{padding:14px}
  .category-sku{top:9px;left:9px;font-size:8px;padding:5px 6px}
  .category-label{font-size:13px;padding:13px 11px 5px;gap:4px}
  .category-label svg{width:16px;height:16px}
  .category-teaser{font-size:11px;min-height:51px;padding:5px 11px}
  .category-foot{font-size:10px;padding:7px 11px 15px}
  .catalog-section{padding:53px 0 59px}
  .catalog-heading{margin-bottom:23px}
  .catalog-heading p{font-size:12px;line-height:1.7}
  .catalog-toolbar{gap:12px;margin-bottom:16px}
  .catalog-toolbar strong{font-size:13px}
  .catalog-toolbar small{font-size:11px}
  .toolbar-actions{width:100%;gap:8px}
  .toolbar-actions select{flex:1;min-width:0;font-size:12px;height:42px}
  .sort-label{display:none}
  .view-toggle{width:40px;height:42px;flex:none}
  .mobile-filter-trigger{min-width:89px}
  .product-grid{grid-template-columns:1fr;gap:15px}
  .product-card{border-radius:12px}
  .card-art{aspect-ratio:1.65}
  .card-art>.product-photo{padding:22px 35px 17px}
  .card-tag{top:12px;left:12px}
  .card-content{min-height:205px;padding:17px 17px 16px}
  .card-content h3{font-size:16px;min-height:0;max-height:unset;margin:7px 0 8px;-webkit-line-clamp:3}
  .card-material{font-size:12px}
  .card-swatches{margin:10px 0 12px;min-height:28px;max-height:50px}
  .card-bottom{min-height:50px}
  .card-bottom button{font-size:12px;min-height:43px;padding:11px 17px}
  .card-bottom small{font-size:11px;max-width:140px}
  .list-mode .product-card{grid-template-columns:120px minmax(0,1fr);min-height:200px}
  .list-mode .card-art{width:120px;min-height:200px}
  .list-mode .card-content{min-height:200px;padding:13px}
  .list-mode .card-content h3{font-size:12px;line-height:1.4;-webkit-line-clamp:2}
  .list-mode .card-bottom{flex-direction:column;align-items:stretch;gap:6px}
  .list-mode .card-bottom small{display:none}
  .catalog-pager{padding:24px 0 8px}
  .catalog-pager-button{width:100%}
  .how-section{padding:57px 0}
  .how-header{gap:15px}
  .how-header>p{font-size:13px}
  .steps{grid-template-columns:1fr;gap:12px}
  .step{min-height:0;padding:24px}
  .step h3{font-size:16px;margin:18px 0 8px}
  .step p{font-size:12px}
  .cta-section{padding-bottom:55px}
  .cta-panel{padding:30px 24px 130px;min-height:330px;display:block}
  .cta-panel h2{font-size:24px;line-height:1.28}
  .cta-panel p{font-size:12px;max-width:280px}
  .cta-panel>.button{margin:14px 0 0}
  .cta-art{width:132px;height:126px;right:15px;bottom:-7px}
  .footer-upper{grid-template-columns:repeat(2,minmax(0,1fr));gap:31px 19px;padding:42px 0 37px}
  .footer-upper>div:first-child{grid-column:1/-1}
  .footer-upper>div>p{font-size:12px;max-width:340px}
  .footer-upper strong{font-size:12px}
  .footer-upper a:not(.brand),.footer-upper span{font-size:11px}
  .footer-note{grid-column:1/-1}
  .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;font-size:11px;min-height:72px}
  .drawer{width:min(440px,100%);height:100dvh}
  .drawer-top{padding:19px 19px 16px}
  .drawer-top h2{font-size:21px}
  .drawer-body{padding:19px}
  .drawer-bottom{padding:15px 19px 18px}
  .product-dialog{width:calc(100vw - 14px);max-width:none;max-height:94dvh;border-radius:14px}
  .dialog-with-gallery{grid-template-columns:1fr}
  .dialog-with-gallery .dialog-media{padding:13px 13px 11px}
  .gallery-viewer{height:265px}
  .gallery-zoom{padding:15px}
  .gallery-thumbnails .gallery-thumb{min-width:69px;max-width:69px;flex-basis:69px}
  .gallery-thumbnails .gallery-thumb img{height:52px}
  .dialog-with-gallery .dialog-details{padding:23px 19px 28px}
  .dialog-with-gallery .dialog-details h2{font-size:21px}
  .dialog-description{font-size:12px}
  .variant-list{margin-top:18px}
  .variant-chip{font-size:11px;padding:9px 10px}
  .spec-row{font-size:11px}
  .checkout-dialog{width:calc(100vw - 14px);padding:24px 17px;max-height:94dvh;border-radius:14px}
  .checkout-header{padding-right:37px}
  .checkout-header h2{font-size:23px}
  .checkout-header p{font-size:12px}
  .checkout-layout{grid-template-columns:1fr;gap:23px;padding-top:21px}
  .checkout-review{order:-1;position:static;padding:16px}
  .checkout-two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .checkout-form input,.checkout-form textarea{font-size:13px}
  .checkout-result-actions .button{flex:1;min-width:135px}
  .toast{max-width:calc(100vw - 24px)}
}
@media(max-width:380px){
  .shell{width:calc(100% - 28px)}
  .header-search{left:14px;right:14px}
  .hero-editorial .hero-copy{padding:29px 19px 0}
  .hero-editorial h1{font-size:31px}
  .hero-editorial .hero-actions{gap:7px}
  .hero-editorial .button{font-size:10px;padding-inline:9px}
  .hero-showcase{height:290px;min-height:290px;padding-inline:13px;gap:7px}
  .category-visual{height:130px}
  .category-label{font-size:12px}
  .card-art{aspect-ratio:1.6}
  .checkout-two-col{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}


/* A imagem de cada cartão tem uma ação acessível e foco visível. */
.card-art{position:relative}
.card-image-open{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;border:0;padding:0;background:transparent;cursor:zoom-in}
.card-image-open:focus-visible{outline:3px solid #2458ef;outline-offset:-4px;border-radius:8px}
.card-art .card-tag{z-index:2;pointer-events:none}
.card-art .card-quick{z-index:3}
.product-card .product-photo{pointer-events:none}

/* Final spacing and keyboard refinements */
@media(min-width:651px) and (max-width:820px){
  .header-primary{height:82px;gap:13px}
  .header-search{max-width:none;min-width:0}
  .header-actions{gap:8px}
  .quote-trigger{width:44px;min-width:44px;padding:0;justify-content:center;position:relative}
  .quote-trigger>span:nth-child(2){display:none}
  .quote-count{position:absolute;top:-5px;right:-6px;min-width:19px;height:19px;font-size:10px}
  .mobile-menu-trigger{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff}
  .header-nav{margin-top:0}
  .nav-inner{display:none;height:auto;flex-direction:column;align-items:stretch;gap:0;padding:5px 0 12px}
  .header-nav.mobile-open .nav-inner{display:flex}
  .nav-inner>a{font-size:13px;line-height:1.35;padding:11px 7px;min-height:43px;border-bottom:1px solid var(--line)}
}
@media(max-width:650px){
  .dialog-with-gallery .dialog-details{display:flex;flex-direction:column;align-items:stretch}
  .dialog-with-gallery .dialog-details>.dialog-subtitle{order:0}
  .dialog-with-gallery .dialog-details>h2{order:1}
  .dialog-with-gallery .dialog-details>.dialog-description{order:2}
  .dialog-with-gallery .dialog-details>.product-meta-line{order:3}
  .dialog-with-gallery .dialog-details>.modal-order-actions{order:4;margin:16px 0 20px}
  .dialog-with-gallery .dialog-details>h3{order:5}
  .dialog-with-gallery .dialog-details>.spec-table{order:6}
  .dialog-with-gallery .dialog-details>.dialog-note{order:7}
  .dialog-with-gallery .dialog-details>.dialog-source{order:8}
}
@media(max-width:380px){
  .card-content{min-height:303px}
}

/* Equilíbrio vertical dos quatro cards em telas compactas (320–380 px). */
@media(max-width:380px){
  .category-label{min-height:70px;align-items:center}
  .category-teaser{min-height:57px;height:57px;max-height:57px}
  .category-foot{min-height:52px;display:flex;align-items:flex-end}
}
/* Controles acrescentados ao fluxo existente, sem alterar a vitrine. */
.local-demo-banner{margin:0;padding:.75rem 1rem;background:#fff3cf;color:#4b3908;text-align:center;font-size:.875rem}
.checkout-form .consent-choice{display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;line-height:1.5}
.checkout-form .consent-choice input{width:1.25rem;min-width:1.25rem;height:1.25rem;margin-top:.125rem;accent-color:#174d40}
#checkout-status{overflow-wrap:anywhere;min-height:1.5em}
.quote-personalization{display:grid;gap:.25rem;font-size:.75rem;margin-top:.75rem}
.quote-personalization textarea{width:100%;min-width:0;box-sizing:border-box;padding:.5rem;border:1px solid #cbd5e1;border-radius:.5rem;font:inherit;resize:vertical}
