:root {
  --ink: #17131d;
  --muted: #6d6672;
  --pink: #ff0878;
  --coral: #ff684c;
  --yellow: #ffc82e;
  --blue: #278eff;
  --line: #e8e5ea;
  --green: #1ebc6b;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scrollbar-width: thin; scrollbar-gutter: stable; }
body { margin: 0; background: #fff; color: var(--ink); font-family: "Plus Jakarta Sans", sans-serif; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img { display: block; max-width: 100%; }

.announcement {
  min-height: 35px;
  padding: 7px max(24px, calc((100vw - 1480px)/2));
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  background: linear-gradient(92deg,#ff0878,#ff6a46 43%,#ffbd28 72%,#2b91ff);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.announcement p { margin: 0; display: flex; align-items: center; gap: 12px; }
.announcement p i { padding: 3px 8px; border-radius: 999px; background: rgba(255,255,255,.2); font-style: normal; }
.announcement a { justify-self: end; border-bottom: 1px solid rgba(255,255,255,.7); }

.site-header {
  height: 84px;
  padding: 0 max(24px, calc((100vw - 1480px)/2));
  position: sticky;
  top: 0;
  z-index: 50;
  display: grid;
  grid-template-columns: 220px 1fr auto;
  align-items: center;
  gap: 28px;
  border-bottom: 1px solid rgba(23,19,29,.07);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(20px);
}
.brand { width: 200px; height: 62px; overflow: hidden; display: flex; align-items: center; }
.brand img { width: 100%; height: 100%; object-fit: contain; }
.desktop-nav { display: flex; justify-content: center; gap: clamp(18px,2.4vw,38px); }
.desktop-nav a { position: relative; padding: 12px 0; font-size: 12px; font-weight: 700; }
.desktop-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 6px;
  height: 2px;
  background: linear-gradient(90deg,var(--pink),var(--coral));
  transition: .25s;
}
.desktop-nav a:hover::after { right: 0; }
.header-actions { display: flex; align-items: center; gap: 12px; }
.catalog-link { font-size: 11px; font-weight: 800; }
.wa-button {
  min-height: 56px;
  padding: 0 20px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: var(--green);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 14px 34px rgba(30,188,107,.22);
  transition: transform .25s, box-shadow .25s;
}
.wa-button:hover { transform: translateY(-2px); box-shadow: 0 18px 42px rgba(30,188,107,.3); }
.wa-button.small { min-height: 48px; padding: 0 16px; border-radius: 15px; }
.menu-button { display: none; width: 46px; height: 46px; border: 1px solid var(--line); border-radius: 14px; place-items: center; background: #fff; }
.mobile-nav { display: none; }

.hero {
  min-height: 710px;
  padding: 74px max(24px, calc((100vw - 1480px)/2)) 50px;
  display: grid;
  grid-template-columns: minmax(0,.95fr) minmax(520px,1.05fr);
  align-items: center;
  gap: 60px;
  overflow: hidden;
}
.hero-copy { position: relative; z-index: 2; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: #b61462; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.hero h1 {
  max-width: 760px;
  margin: 24px 0;
  font: 600 clamp(50px,5.6vw,88px)/1.02 "Sora", sans-serif;
  letter-spacing: -.022em;
}
.hero h1 span {
  position: relative;
  display: inline;
  color: transparent;
  background: linear-gradient(100deg,var(--pink),var(--coral),#ed9b00);
  background-clip: text;
  -webkit-background-clip: text;
}
.hero h1 span::after {
  content: "";
  position: absolute;
  height: 7px;
  left: 0;
  right: 0;
  bottom: -3px;
  border: solid var(--yellow);
  border-width: 0 0 3px;
  border-radius: 50%;
  transform: rotate(-1deg);
}
.hero-copy>p { max-width: 680px; margin: 0; color: var(--muted); font-size: 16px; line-height: 1.75; }
.hero-actions { margin-top: 32px; display: flex; align-items: center; flex-wrap: wrap; gap: 24px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; padding-bottom: 5px; border-bottom: 1px solid var(--ink); font-size: 12px; font-weight: 800; }
.hero-assurance { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 18px; color: #514a56; font-size: 10px; font-weight: 700; }
.hero-assurance span { display: flex; align-items: center; gap: 7px; }
.hero-assurance svg { color: var(--green); }
.hero-visual { min-height: 605px; position: relative; display: grid; place-items: end center; isolation: isolate; }
.hero-visual::before {
  content: "";
  position: absolute;
  inset: 2% -8% 4% 4%;
  z-index: -3;
  border-radius: 44% 56% 54% 46% / 50% 46% 54% 50%;
  background: radial-gradient(circle at 30% 25%,#fff 0 4%,transparent 5%), linear-gradient(145deg,#fff3ca,#ffe7f2 36%,#eee5ff 68%,#dff0ff);
}
.hero-visual::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: -35px;
  bottom: 32px;
  z-index: -2;
  border-radius: 50%;
  background: repeating-linear-gradient(135deg,var(--blue) 0 2px,transparent 2px 10px);
  opacity: .2;
}
.hero-visual>img { width: min(760px,104%); max-height: 630px; object-fit: contain; position: relative; z-index: 2; filter: drop-shadow(0 28px 35px rgba(41,32,62,.14)); }
.hero-orbit { position: absolute; z-index: -1; border: 2px solid; border-radius: 50%; }
.orbit-one { width: 360px; height: 360px; top: 8%; right: -5%; border-color: rgba(255,8,120,.25); }
.orbit-two { width: 190px; height: 190px; left: 1%; bottom: 6%; border-color: rgba(39,142,255,.3); }
.floating-note { position: absolute; z-index: 4; padding: 12px 15px; border: 1px solid rgba(255,255,255,.8); border-radius: 999px; display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.85); box-shadow: 0 16px 42px rgba(28,22,41,.12); backdrop-filter: blur(12px); font-size: 10px; font-weight: 800; }
.floating-note svg { color: var(--pink); }
.note-top { top: 12%; left: 4%; }
.note-side { right: -1%; top: 37%; }
.hero-badge { width: 122px; height: 122px; padding: 20px; position: absolute; left: -5px; bottom: 26px; z-index: 4; border-radius: 50%; display: flex; flex-direction: column; justify-content: center; background: var(--yellow); transform: rotate(-7deg); box-shadow: 0 16px 30px rgba(185,130,0,.2); }
.hero-badge b { font: 700 24px/1 "Sora"; }
.hero-badge span { margin-top: 6px; font-size: 9px; line-height: 1.3; font-weight: 800; }

.ticker { min-height: 64px; padding: 15px 24px; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 22px; background: var(--ink); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; scrollbar-width: none; }
.ticker i { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--yellow); }

.product-line { padding: 70px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns: .9fr 1.1fr; gap:80px; align-items:center; border-bottom:1px solid var(--line); }
.product-lead>span { color:#b61462; font-size:10px; font-weight:800; letter-spacing:.12em; }
.product-lead h2 { margin:12px 0 14px; font:600 clamp(34px,3.8vw,56px)/1.08 "Sora"; letter-spacing:-.018em; }
.product-lead p { max-width:650px; margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.product-models { display:grid; gap:0; border-top:1px solid var(--line); }
.product-models>div { min-height:78px; padding:18px 4px; display:grid; grid-template-columns:190px 1fr; gap:18px; align-items:center; border-bottom:1px solid var(--line); }
.product-models b { font:600 18px "Sora"; }
.product-models span { color:var(--muted); font-size:11px; }

.intro-section { padding: 125px max(24px,calc((100vw - 1380px)/2)); display: grid; grid-template-columns: 180px minmax(0,1fr) 330px; gap: 60px; align-items: start; }
.section-label,.section-heading span,.journey-intro>span,.tools-copy>span,.local-copy>span,.faq-section>div>span,.final-cta>span { color: #b61462; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { margin: 0; font: 600 clamp(40px,4.5vw,68px)/1.08 "Sora"; letter-spacing: -.018em; }
.intro-section>div:nth-child(2)>p { max-width: 760px; margin: 24px 0 0; color: var(--muted); font-size: 15px; line-height: 1.75; }
.process-stroke { padding-top: 35px; display: flex; align-items: center; gap: 9px; color: var(--pink); }
.process-stroke span { height: 1px; flex: 1; border-top: 1px dashed #c8bdcd; }
.process-stroke svg:nth-of-type(2) { color: var(--coral); }
.process-stroke svg:nth-of-type(3) { color: var(--blue); }

.audience-section { padding: 100px max(24px,calc((100vw - 1480px)/2)) 120px; background: #fbfafd; }
.section-heading { margin-bottom: 48px; display: grid; grid-template-columns: 1fr 370px; gap: 60px; align-items: end; }
.section-heading h2 { max-width: 860px; margin-top: 14px; }
.section-heading>p { color: var(--muted); font-size: 13px; line-height: 1.7; }
.audience-grid { min-height: 660px; display: grid; grid-template-columns: 1.15fr .85fr; grid-template-rows: 1fr 1fr; gap: 18px; }
.audience-card { position: relative; overflow: hidden; border-radius: 30px; background: #ddd; color: #fff; }
.audience-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 15%,rgba(14,11,18,.78) 100%); }
.audience-card>img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s; }
.audience-card:hover>img { transform: scale(1.035); }
.audience-1 { grid-row: 1/3; }
.audience-overlay { position: absolute; inset: auto 0 0; z-index: 2; padding: 34px; }
.audience-overlay>span { display: inline-flex; padding: 6px 10px; border-radius: 999px; background: rgba(255,255,255,.18); backdrop-filter: blur(7px); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.audience-overlay h3 { max-width: 620px; margin: 14px 0 10px; font: 600 clamp(25px,2.6vw,43px)/1.08 "Sora"; letter-spacing: -.025em; }
.audience-2 .audience-overlay h3,.audience-3 .audience-overlay h3 { font-size: clamp(22px,2vw,32px); }
.audience-overlay p { max-width: 560px; margin: 0 0 18px; color: rgba(255,255,255,.82); font-size: 11px; line-height: 1.6; }
.audience-overlay a { display: inline-flex; align-items: center; gap: 8px; font-size: 10px; font-weight: 800; }
.cotton-note { margin-top: 18px; padding: 22px 26px; border: 1px solid #ffd2e5; border-radius: 24px; display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; background: linear-gradient(100deg,#fff4f8,#fffaf0); }
.cotton-note svg { color: var(--pink); }
.cotton-note p { margin: 0; font-size: 12px; }
.cotton-note small { color: var(--muted); font-size: 9px; }

.journey { padding: 120px max(24px,calc((100vw - 1380px)/2)); display: grid; grid-template-columns: .9fr 1.1fr; gap: 110px; align-items: center; }
.journey-intro h2 { margin-top: 16px; }
.journey-intro p { max-width: 580px; color: var(--muted); line-height: 1.7; }
.journey-intro a { margin-top: 20px; display: inline-flex; align-items: center; gap: 8px; color: #b61462; font-size: 11px; font-weight: 800; border-bottom: 1px solid #b61462; }
.journey-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.journey-list li { min-height: 116px; padding: 22px 6px; display: grid; grid-template-columns: 44px 1fr auto; gap: 20px; align-items: center; border-bottom: 1px solid var(--line); }
.journey-list li>i { color: var(--pink); font-size: 10px; font-style: normal; font-weight: 800; }
.journey-list li>div { display: grid; gap: 7px; }
.journey-list b { font: 600 21px "Sora"; }
.journey-list span { color: var(--muted); font-size: 11px; }
.journey-list li>svg { width: 36px; height: 36px; color: #a496ae; stroke-width: 1.3; }

.tools-section { margin: 0 max(24px,calc((100vw - 1480px)/2)) 120px; padding: 70px; min-height: 520px; overflow: hidden; border-radius: 38px; display: grid; grid-template-columns: .85fr 1.15fr; gap: 70px; align-items: center; background: linear-gradient(135deg,#261b35,#19141f); color: #fff; }
.tools-copy>span { color: #ff9bc9; }
.tools-copy h2 { margin-top: 16px; }
.tools-copy p { color: #c8c0cd; line-height: 1.7; }
.tools-stage { min-height: 370px; position: relative; }
.tools-stage::before { content:""; position:absolute; width:420px; height:420px; inset:-40px auto auto 15%; border:1px solid rgba(255,255,255,.1); border-radius:50%; box-shadow: 0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.02); }
.tool-pill { min-height: 92px; padding: 17px 20px; position: absolute; width: min(420px,86%); border: 1px solid rgba(255,255,255,.15); border-radius: 23px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 15px; background: rgba(255,255,255,.1); backdrop-filter: blur(15px); transition: .25s; }
.tool-pill:hover { transform: translateX(7px); background: rgba(255,255,255,.15); }
.tool-pill>svg:first-child { width: 38px; height: 38px; padding: 8px; border-radius: 12px; background: var(--pink); }
.tool-pill>span { display:grid; gap:4px; }
.tool-pill b { font-size: 12px; }
.tool-pill small { color:#c7becb; font-size:9px; }
.tool-pill>svg:last-child { width:18px; }
.pill-one { top: 0; left: 0; }
.pill-two { top: 120px; right: 0; }
.pill-three { top: 240px; left: 7%; }
.pill-two>svg:first-child { background: var(--blue); }
.pill-three>svg:first-child { background: var(--coral); }
.tools-scribble { position:absolute; right:0; bottom:-28px; color:#ffca2f; font: 400 23px "Sora"; transform:rotate(-5deg); }

.local-section { padding: 120px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns: 230px 1fr 300px; gap: 60px; align-items:center; background:#f5f3ff; }
.local-number { font: 700 170px/.8 "Sora"; letter-spacing:-.09em; color:transparent; -webkit-text-stroke:2px #9e8bf1; opacity:.75; }
.local-copy h2 { margin-top:16px; }
.local-copy p { max-width:760px; color:var(--muted); line-height:1.75; }
.local-copy>div { display:flex; gap:12px; flex-wrap:wrap; }
.local-copy b { padding:8px 12px; border-radius:999px; background:#fff; font-size:9px; }
.local-ring { width:260px; height:260px; border:2px solid var(--pink); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; transform:rotate(7deg); color:var(--pink); }
.local-ring span { font-size:10px; }
.local-ring b { font:700 28px "Sora"; }
.local-ring i { margin-top:8px; font-size:11px; font-style:normal; }

.faq-section { padding:120px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:.75fr 1.25fr; gap:100px; }
.faq-section h2 { margin-top:16px; }
.faq-list { border-top:1px solid var(--line); }
.faq-list button { width:100%; padding:25px 0; border:0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:1fr auto; gap:15px; text-align:left; background:transparent; cursor:pointer; }
.faq-list button>span { display:flex; gap:18px; font-size:14px; font-weight:700; }
.faq-list button>span b { color:var(--pink); font-size:10px; }
.faq-list button>svg { transition:.25s; }
.faq-list button>svg.open { transform:rotate(180deg); }
.faq-list button p { grid-column:1/-1; margin:0 44px; color:var(--muted); font-size:12px; line-height:1.75; }

.final-cta { min-height:520px; padding:100px 24px; position:relative; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:linear-gradient(125deg,var(--pink),var(--coral) 47%,#ffb629); color:#fff; }
.final-cta>span { color:#fff; }
.final-cta h2 { margin:18px 0 30px; font:600 clamp(45px,6vw,82px)/1.06 "Sora"; letter-spacing:-.022em; }
.wa-button.light { background:#fff; color:var(--ink); box-shadow:0 18px 38px rgba(86,20,36,.18); }
.final-cta>small { margin-top:16px; font-size:9px; opacity:.8; }
.final-confetti i { position:absolute; width:14px; height:60px; border:2px solid #fff; border-radius:50%; opacity:.35; }
.final-confetti i:nth-child(1){left:8%;top:15%;transform:rotate(35deg)}
.final-confetti i:nth-child(2){right:12%;top:22%;transform:rotate(-25deg)}
.final-confetti i:nth-child(3){left:17%;bottom:10%;transform:rotate(-52deg)}
.final-confetti i:nth-child(4){right:22%;bottom:12%;transform:rotate(48deg)}
.final-confetti i:nth-child(5){left:49%;top:-35px;width:100px;height:100px}

footer { padding:80px max(24px,calc((100vw - 1380px)/2)) 24px; display:grid; grid-template-columns:1.6fr repeat(3,1fr); gap:50px; background:#17131d; color:#fff; }
.footer-brand img { width:230px; filter:brightness(0) invert(1); }
.footer-brand p { max-width:380px; color:#a9a2ad; font-size:10px; line-height:1.7; }
footer>div:not(.footer-brand):not(.footer-bottom) { display:flex; flex-direction:column; gap:10px; font-size:10px; }
footer b { margin-bottom:8px; color:#ff8cbe; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
footer a,footer span { color:#c8c2cb; }
.footer-bottom { grid-column:1/-1; padding-top:25px; border-top:1px solid #37313a; display:flex; justify-content:space-between; font-size:8px; }

@media (max-width: 1100px) {
  .desktop-nav,.catalog-link { display:none; }
  .site-header { grid-template-columns:1fr auto; }
  .menu-button { display:grid; }
  .mobile-nav { padding:20px; position:absolute; top:84px; left:18px; right:18px; display:grid; gap:4px; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:0 20px 50px rgba(23,19,29,.15); }
  .mobile-nav a { padding:13px 12px; border-bottom:1px solid var(--line); font-size:12px; font-weight:700; }
  .hero { grid-template-columns:1fr 1fr; gap:25px; }
  .intro-section { grid-template-columns:120px 1fr; }
  .process-stroke { grid-column:2; }
  .local-section { grid-template-columns:170px 1fr; }
  .local-ring { display:none; }
}

/* Shared internal pages */
.subpage-header { min-height:84px; padding:0 max(24px,calc((100vw - 1380px)/2)); position:sticky; top:0; z-index:50; display:grid; grid-template-columns:220px 1fr auto; gap:28px; align-items:center; border-bottom:1px solid rgba(23,19,29,.08); background:rgba(255,255,255,.94); backdrop-filter:blur(18px); }
.subpage-nav { display:flex; justify-content:center; gap:38px; font-size:13px; font-weight:700; }
.subpage-nav a { padding:12px 0; border-bottom:2px solid transparent; }
.subpage-nav a:hover { border-color:var(--pink); }
.subpage-mobile-menu { display:none; position:relative; }
.subpage-mobile-menu summary { width:46px; height:46px; border:1px solid var(--line); border-radius:14px; display:grid; place-items:center; list-style:none; cursor:pointer; }
.subpage-mobile-menu summary::-webkit-details-marker { display:none; }
.subpage-mobile-menu>div { width:min(310px,calc(100vw - 32px)); padding:14px; position:absolute; right:0; top:56px; display:grid; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 20px 50px rgba(23,19,29,.16); }
.subpage-mobile-menu a { min-height:44px; padding:10px; display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--line); font-size:13px; font-weight:700; }

.subpage-hero { min-height:610px; padding:100px max(24px,calc((100vw - 1380px)/2)); position:relative; overflow:hidden; display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:center; background:linear-gradient(140deg,#fff7fb,#fff9e8 48%,#edf6ff); }
.subpage-hero>div:first-child { position:relative; z-index:2; }
.subpage-hero span,.simulator-heading>span,.catalog-admin-note span,.measure-steps>span,.subpage-cta>span,.simulator-next span { color:#b61462; font-size:11px; font-weight:800; letter-spacing:.13em; }
.subpage-hero h1,.simulator-heading h1 { max-width:900px; margin:18px 0 24px; font:600 clamp(52px,6.2vw,88px)/1.05 "Sora"; letter-spacing:-.022em; }
.subpage-hero p,.simulator-heading p { max-width:760px; margin:0; color:var(--muted); font-size:16px; line-height:1.75; }
.catalog-mark { width:min(430px,80vw); aspect-ratio:1; justify-self:center; position:relative; border:2px solid var(--pink); border-radius:45% 55% 55% 45% / 48% 48% 52% 52%; display:grid; place-items:center; background:linear-gradient(145deg,#fff,#ffe7f2); transform:rotate(5deg); box-shadow:0 0 0 36px rgba(255,8,120,.05),0 0 0 72px rgba(39,142,255,.04); }
.catalog-mark svg:first-child { width:45%; height:45%; color:var(--pink); stroke-width:1.2; }
.catalog-mark svg:last-child { width:70px; height:70px; position:absolute; right:12%; top:12%; color:var(--yellow); }
.catalog-mark i { position:absolute; left:12%; bottom:16%; color:var(--blue); font:700 62px "Sora"; font-style:normal; }

.catalog-grid { padding:100px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.catalog-grid article { min-height:360px; padding:30px; border:1px solid var(--line); border-radius:28px; display:flex; flex-direction:column; background:#fff; transition:.25s; }
.catalog-grid article:hover { transform:translateY(-5px); border-color:#f2a9cb; box-shadow:0 22px 54px rgba(45,27,56,.08); }
.catalog-grid article>div { display:flex; align-items:center; justify-content:space-between; }
.catalog-grid article>div svg { width:50px; height:50px; padding:12px; border-radius:15px; background:#fff0f7; color:var(--pink); }
.catalog-grid article>div i { color:#b8afb9; font-size:12px; font-style:normal; font-weight:800; }
.catalog-grid article>small { margin-top:42px; color:#b61462; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.catalog-grid h2 { margin:9px 0 13px; font:600 27px/1.18 "Sora"; letter-spacing:-.01em; }
.catalog-grid p { margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.catalog-grid a { margin-top:auto; padding-top:24px; display:flex; align-items:center; gap:8px; color:#b61462; font-size:12px; font-weight:800; }
.catalog-grid a svg { width:18px; }
.catalog-admin-note { margin:0 max(24px,calc((100vw - 1380px)/2)) 100px; padding:64px; border-radius:34px; display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; background:#201827; color:#fff; }
.catalog-admin-note span { color:#ff9bc9; }
.catalog-admin-note h2 { margin:12px 0 0; font:600 clamp(34px,4vw,54px)/1.1 "Sora"; letter-spacing:-.015em; }
.catalog-admin-note p { color:#c8c0cd; font-size:14px; line-height:1.8; }

.measure-illustration { width:min(430px,80vw); aspect-ratio:1; justify-self:center; position:relative; border-radius:50%; display:grid; place-items:center; background:linear-gradient(145deg,#ffe4f0,#fff4bd 50%,#dceeff); }
.measure-illustration svg:nth-child(2) { width:48%; height:48%; color:var(--pink); stroke-width:1.25; }
.measure-illustration svg:first-child { width:110px; height:110px; position:absolute; top:4%; right:4%; padding:20px; border-radius:50%; background:#fff; color:var(--blue); transform:rotate(18deg); }
.measure-illustration svg:last-child { width:90px; height:90px; position:absolute; left:2%; bottom:8%; padding:18px; border-radius:26px; background:var(--yellow); color:var(--ink); transform:rotate(-8deg); }
.measure-guide { padding:100px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.measure-steps h2,.measure-models h2 { margin:14px 0 28px; font:600 clamp(36px,4.2vw,58px)/1.08 "Sora"; letter-spacing:-.018em; }
.measure-steps ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.measure-steps li { padding:24px 4px; display:grid; grid-template-columns:48px 1fr; gap:20px; border-bottom:1px solid var(--line); }
.measure-steps li>i { color:var(--pink); font-size:11px; font-style:normal; font-weight:800; }
.measure-steps b { font-size:15px; }
.measure-steps p { margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.65; }
.measure-models>div { padding:38px; border-radius:28px; background:#f5f3ff; }
.measure-models>div>svg { width:50px; height:50px; color:var(--blue); }
.measure-models>div>span { display:block; margin-top:28px; color:#6350b1; font-size:10px; font-weight:800; letter-spacing:.1em; }
.measure-models h2 { font-size:clamp(31px,3.2vw,46px); }
.measure-models p { color:var(--muted); font-size:13px; line-height:1.75; }
.measure-models ul { margin:18px 0 0; padding:0; list-style:none; border:1px solid var(--line); border-radius:24px; overflow:hidden; }
.measure-models li { min-height:64px; padding:13px 18px; display:grid; grid-template-columns:auto 1fr auto; gap:13px; align-items:center; border-bottom:1px solid var(--line); }
.measure-models li:last-child { border:0; }
.measure-models li svg { width:22px; color:var(--pink); }
.measure-models li span { font-size:13px; font-weight:700; }
.measure-models li b { color:var(--muted); font-size:10px; }
.measure-warning { margin:0 max(24px,calc((100vw - 1380px)/2)) 100px; padding:28px 32px; border:1px solid #ffd2e5; border-radius:24px; display:grid; grid-template-columns:120px 1fr; gap:25px; background:#fff7fa; }
.measure-warning b { color:#b61462; font-size:13px; }
.measure-warning p { margin:0; color:var(--muted); font-size:13px; line-height:1.7; }

.subpage-cta { min-height:430px; padding:80px 24px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:linear-gradient(125deg,var(--pink),var(--coral) 48%,#ffb629); color:#fff; }
.subpage-cta>span { color:#fff; }
.subpage-cta h2 { max-width:980px; margin:18px 0 30px; font:600 clamp(42px,5.5vw,72px)/1.07 "Sora"; letter-spacing:-.02em; }
.subpage-footer { margin-top:0; }

/* Live simulator */
.simulator-heading { padding:90px max(24px,calc((100vw - 1380px)/2)) 54px; text-align:center; }
.simulator-heading h1 { max-width:none; }
.simulator-heading p { margin:0 auto; }
.simulator-app { margin:0 max(24px,calc((100vw - 1320px)/2)) 90px; min-height:720px; border:1px solid var(--line); border-radius:34px; display:grid; grid-template-columns:340px 1fr; overflow:hidden; box-shadow:0 25px 70px rgba(35,22,42,.08); }
.simulator-controls { padding:34px; display:flex; flex-direction:column; gap:28px; background:#fff; border-right:1px solid var(--line); }
.simulator-controls>div { display:grid; gap:10px; }
.simulator-controls label { display:flex; align-items:center; gap:7px; font-size:12px; font-weight:800; }
.simulator-controls label svg { width:17px; color:var(--pink); }
.simulator-controls select,.simulator-controls input[type="text"],.simulator-controls input:not([type]) { width:100%; height:48px; padding:0 14px; border:1px solid #d9d4dc; border-radius:12px; background:#fff; font:600 13px "Plus Jakarta Sans"; }
.simulator-controls input[type="file"] { display:none; }
.segmented { display:grid; grid-template-columns:1fr 1fr; padding:4px; border-radius:13px; background:#f3f0f4; }
.segmented button { min-height:40px; border:0; border-radius:10px; background:transparent; font-size:12px; font-weight:700; cursor:pointer; }
.segmented button.active { background:#fff; box-shadow:0 4px 12px rgba(23,19,29,.09); }
.color-options { display:flex; flex-wrap:wrap; gap:9px; }
.color-options button { width:34px; height:34px; border:2px solid #e2dde5; border-radius:50%; cursor:pointer; box-shadow:inset 0 0 0 2px #fff; }
.color-options button.active { outline:3px solid var(--pink); outline-offset:2px; }
.upload-button,.reset-button { min-height:46px; padding:0 14px; border:1px solid #d9d4dc; border-radius:12px; display:flex; align-items:center; justify-content:center; gap:8px; background:#fff; font-size:12px; font-weight:800; cursor:pointer; }
.upload-button { color:#b61462; border-color:#f0a5c8; background:#fff7fb; }
.upload-button svg,.reset-button svg { width:18px; }
.simulator-controls small { color:var(--muted); font-size:10px; line-height:1.5; }
.reset-button { margin-top:auto; }
.simulator-preview { min-width:0; padding:35px; display:grid; place-items:center; align-content:center; background:radial-gradient(circle at 50% 40%,#fff 0 18%,transparent 55%),linear-gradient(145deg,#f7efff,#eef7ff); }
.simulator-canvas { width:min(630px,100%); aspect-ratio:1; position:relative; }
.garment-color,.garment-image { width:100%; height:100%; position:absolute; inset:0; object-fit:contain; }
.garment-color { -webkit-mask-size:contain; mask-size:contain; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; }
.garment-image { z-index:2; mix-blend-mode:multiply; }
.print-area { width:26%; height:34%; position:absolute; z-index:3; left:37%; top:31%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; overflow:hidden; text-align:center; pointer-events:none; }
.print-area.back { top:29%; }
.print-area.print-babylook { width:24%; left:38%; top:33%; }
.print-area.print-moletom { width:24%; left:38%; top:31%; height:28%; }
.print-area img { max-width:100%; max-height:70%; object-fit:contain; filter:drop-shadow(0 3px 4px rgba(0,0,0,.1)); }
.print-area strong { max-width:100%; color:#17131d; font:700 clamp(13px,2vw,24px)/1.1 "Sora"; overflow-wrap:anywhere; }
.simulator-note { padding:12px 17px; border-radius:999px; display:flex; flex-wrap:wrap; gap:8px; background:#fff; box-shadow:0 12px 28px rgba(23,19,29,.08); font-size:10px; }
.simulator-note b { color:#b61462; }
.simulator-note span { color:var(--muted); }
.simulator-next { margin:0 max(24px,calc((100vw - 1320px)/2)) 100px; padding:50px; border-radius:30px; display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; background:#211827; color:#fff; }
.simulator-next span { color:#ff9bc9; }
.simulator-next h2 { max-width:850px; margin:12px 0 0; font:600 clamp(30px,3.5vw,48px)/1.1 "Sora"; letter-spacing:-.015em; }

@media (max-width: 960px) {
  .subpage-header { grid-template-columns:1fr auto auto; }
  .subpage-nav { display:none; }
  .subpage-mobile-menu { display:block; }
  .subpage-hero { grid-template-columns:1fr; padding-top:70px; text-align:center; }
  .subpage-hero p { margin-left:auto; margin-right:auto; }
  .catalog-mark,.measure-illustration { width:min(360px,76vw); }
  .catalog-grid { grid-template-columns:1fr 1fr; }
  .catalog-admin-note,.measure-guide { grid-template-columns:1fr; gap:40px; }
  .simulator-app { grid-template-columns:290px 1fr; }
  .simulator-controls { padding:25px; }
  .simulator-next { grid-template-columns:1fr; }
}

@media (max-width: 680px) {
  .subpage-header { min-height:72px; padding:0 16px; grid-template-columns:1fr auto; }
  .subpage-announcement { min-height:40px; }
  .subpage-wa { display:none; }
  .subpage-hero { min-height:0; padding:64px 20px 70px; gap:48px; }
  .subpage-hero h1,.simulator-heading h1 { font-size:clamp(42px,12vw,60px); line-height:1.08; }
  .subpage-hero p,.simulator-heading p { font-size:14px; }
  .catalog-grid { padding:70px 18px; grid-template-columns:1fr; }
  .catalog-grid article { min-height:330px; }
  .catalog-admin-note { margin:0 14px 70px; padding:38px 24px; }
  .measure-guide { padding:70px 18px; }
  .measure-models>div { padding:28px 22px; }
  .measure-models li { grid-template-columns:auto 1fr; }
  .measure-models li b { grid-column:2; }
  .measure-warning { margin:0 14px 70px; padding:24px; grid-template-columns:1fr; gap:8px; }
  .subpage-cta { min-height:410px; padding:70px 20px; }
  .simulator-heading { padding:65px 20px 40px; }
  .simulator-app { margin:0 12px 65px; grid-template-columns:1fr; border-radius:24px; }
  .simulator-controls { border-right:0; border-bottom:1px solid var(--line); }
  .simulator-preview { padding:18px 10px 28px; }
  .simulator-canvas { width:100%; }
  .simulator-next { margin:0 14px 70px; padding:34px 24px; }
}

@media (max-width: 420px) {
  .hero { padding-left:16px; padding-right:16px; }
  .hero h1 { font-size:40px; letter-spacing:-.012em; }
  .hero-visual { min-height:410px; }
  .note-side { right:-8px; }
  .audience-card { min-height:390px; border-radius:24px; }
  .audience-overlay h3 { font-size:27px; }
  .journey-list li { grid-template-columns:30px 1fr; }
  .journey-list li>svg { display:none; }
  .tool-pill { width:100%; left:0; right:0; }
  .tools-scribble { display:none; }
  .local-number { font-size:96px; }
  footer { grid-template-columns:1fr; }
  .footer-brand,.footer-bottom { grid-column:auto; }
  .subpage-hero h1,.simulator-heading h1 { font-size:39px; letter-spacing:-.01em; }
  .catalog-mark,.measure-illustration { width:280px; max-width:86vw; }
  .catalog-grid article { padding:25px; }
  .simulator-controls { padding:22px 18px; }
  .simulator-note { border-radius:16px; justify-content:center; text-align:center; }
}

/* Refinamento v3.2: ritmo mais compacto, títulos equilibrados e navegação ampliada. */
body { overflow-x:clip; }
main,section,header,footer,nav,div,article,aside { min-width:0; }
h1,h2,h3,p { overflow-wrap:break-word; }
[id] { scroll-margin-top:110px; }

.site-header { grid-template-columns:220px minmax(0,1fr) auto; }
.desktop-nav { gap:clamp(20px,2.2vw,34px); }
.desktop-nav a,.catalog-link { font-size:14px; }
.subpage-nav { gap:clamp(18px,2vw,30px); font-size:14px; }

.hero { min-height:650px; padding-top:62px; padding-bottom:42px; }
.hero h1 { font-size:clamp(46px,4.55vw,68px); }
.product-showcase { padding-top:72px; padding-bottom:72px; gap:38px 64px; }
.product-copy h2 { font-size:clamp(38px,3.75vw,57px); }
.product-visual { min-height:510px; }
.mini-product-photo { width:110px; aspect-ratio:1; display:grid; place-items:center; }
.mini-product-photo img { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 13px 18px rgba(31,23,40,.14)); }

.simulator-spotlight { margin-top:20px; margin-bottom:20px; padding:50px; gap:58px; }
.spotlight-copy h2 { font-size:clamp(36px,3.45vw,50px); }
.spotlight-open { margin-top:-78px; margin-bottom:18px; }

.intro-section { padding-top:82px; padding-bottom:82px; gap:48px; }
.audience-section { padding-top:76px; padding-bottom:86px; }
.section-heading { margin-bottom:36px; }
.intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(36px,3.55vw,53px); }
.audience-editorial { min-height:450px; }
.editorial-1 { min-height:510px; }
.editorial-1 img { max-height:510px; }
.audience-copy h3 { font-size:clamp(27px,2.35vw,38px); }
.editorial-2 .audience-copy h3,.editorial-3 .audience-copy h3 { font-size:clamp(25px,2vw,32px); }
.journey { padding-top:82px; padding-bottom:82px; gap:80px; }
.journey-list li { min-height:104px; padding:18px 6px; }
.tools-section { margin-bottom:80px; padding:58px; min-height:460px; }
.local-section { padding-top:82px; padding-bottom:82px; }
.quote-section { padding-top:78px; padding-bottom:78px; }
.quote-copy h2 { font-size:clamp(36px,3.55vw,51px); }
.faq-section { padding-top:78px; padding-bottom:78px; gap:72px; }
.final-cta { min-height:450px; padding:78px 24px; }
.final-cta h2 { font-size:clamp(39px,4.45vw,64px); }

footer { padding-top:64px; gap:44px; }
.footer-brand { display:flex; flex-direction:column; align-items:center; text-align:center; }
.footer-mark { width:95px; height:110px; position:relative; display:block; overflow:hidden; flex:0 0 auto; }
.footer-brand .footer-mark img { width:404px; max-width:none; height:auto; padding:0; position:absolute; left:0; top:50%; border:0; border-radius:0; background:transparent; filter:none; transform:translateY(-50%); }
.footer-brand p { margin:8px auto 0; max-width:390px; }

/* Páginas internas compactas. */
.subpage-hero { min-height:470px; padding-top:68px; padding-bottom:68px; gap:54px; }
.subpage-hero h1 { font-size:clamp(45px,5vw,68px); }
.catalog-hero { min-height:420px; padding-top:58px; padding-bottom:58px; }
.catalog-hero h1 { max-width:780px; font-size:clamp(42px,4.25vw,58px); }
.catalog-mark { width:min(330px,72vw); }
.measures-hero { min-height:360px; padding-top:48px; padding-bottom:48px; grid-template-columns:1.3fr .7fr; gap:40px; }
.measures-hero h1 { max-width:760px; font-size:clamp(34px,3.45vw,46px); line-height:1.12; }
.measures-hero p { font-size:15px; }
.measure-illustration { width:min(285px,66vw); }
.measure-illustration svg:first-child { width:78px; height:78px; padding:15px; }
.measure-illustration svg:last-child { width:66px; height:66px; padding:14px; border-radius:20px; }
.catalog-grid,.measure-guide { padding-top:72px; padding-bottom:72px; }
.catalog-grid article { min-height:330px; }
.catalog-admin-note { margin-bottom:72px; padding:52px; }
.catalog-admin-note h2 { font-size:clamp(31px,3.35vw,46px); }
.measure-guide { gap:64px; }
.measure-steps h2,.measure-models h2 { font-size:clamp(32px,3.45vw,48px); }
.measure-warning { margin-bottom:72px; }
.subpage-cta { min-height:370px; padding:65px 24px; }
.subpage-cta h2 { font-size:clamp(38px,4.45vw,60px); }
.simulator-heading { padding-top:62px; padding-bottom:38px; }
.simulator-heading h1 { margin:0 0 18px; font-size:clamp(36px,3.9vw,52px); line-height:1.1; }
.simulator-heading p { font-size:15px; }
.simulator-full-wrap { margin-bottom:70px; }
.simulator-next { margin-bottom:72px; padding:44px; }

/* Contato completo, com canais claros e formulário preservado. */
.contact-hero { padding:72px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:center; background:linear-gradient(140deg,#fff7fb,#fff9e8 48%,#edf6ff); }
.contact-hero>div>span,.contact-note span { color:#b61462; font-size:11px; font-weight:800; letter-spacing:.12em; }
.contact-hero h1 { max-width:820px; margin:16px 0 20px; font:600 clamp(42px,4.6vw,62px)/1.08 "Sora"; letter-spacing:-.014em; }
.contact-hero>div>p { max-width:720px; margin:0; color:var(--muted); font-size:16px; line-height:1.75; }
.contact-hero aside { padding:32px; border:1px solid rgba(23,19,29,.1); border-radius:28px; background:rgba(255,255,255,.72); box-shadow:0 20px 55px rgba(41,29,49,.07); }
.contact-hero aside>b { font:600 20px "Sora"; }
.contact-hero ol { margin:20px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.contact-hero li { padding:16px 0; display:grid; grid-template-columns:36px 1fr; gap:12px; border-bottom:1px solid var(--line); color:#4f4853; font-size:14px; line-height:1.5; }
.contact-hero li i { color:var(--pink); font-size:10px; font-style:normal; font-weight:800; }
.contact-options { padding:64px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.contact-options>a,.contact-options>article { min-height:210px; padding:25px; border:1px solid var(--line); border-radius:25px; display:flex; align-items:flex-start; gap:16px; background:#fff; transition:.2s; }
.contact-options>a:hover { transform:translateY(-3px); border-color:#f2a9cb; box-shadow:0 17px 45px rgba(40,27,48,.07); }
.contact-options svg { width:42px; height:42px; padding:10px; flex:0 0 auto; border-radius:13px; background:#fff0f7; color:var(--pink); }
.contact-options span { min-width:0; display:grid; gap:8px; }
.contact-options small { color:#b61462; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.contact-options b { font:600 16px/1.35 "Sora"; overflow-wrap:anywhere; }
.contact-options p { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.contact-note { padding:72px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:center; background:#f5f3ff; }
.contact-note h2 { margin:13px 0 0; font:600 clamp(34px,3.5vw,49px)/1.1 "Sora"; }
.contact-note p { margin:0; color:var(--muted); font-size:15px; line-height:1.8; }

@media (max-width:1100px) {
  .desktop-nav,.catalog-link { display:none; }
  .contact-options { grid-template-columns:1fr 1fr; }
}

@media (max-width:960px) {
  .catalog-hero,.measures-hero { grid-template-columns:1fr; min-height:0; text-align:center; }
  .catalog-hero p,.measures-hero p { margin-left:auto; margin-right:auto; }
  .contact-hero,.contact-note { grid-template-columns:1fr; gap:36px; }
}

@media (max-width:780px) {
  [id] { scroll-margin-top:82px; }
  .hero { padding-top:46px; padding-bottom:30px; }
  .hero h1 { font-size:clamp(39px,10.5vw,51px); }
  .product-showcase { padding-top:54px; padding-bottom:54px; }
  .product-copy h2 { font-size:clamp(34px,8.8vw,44px); }
  .product-visual { min-height:420px; }
  .mini-product-photo { width:88px; }
  .simulator-spotlight { padding:30px 18px; }
  .spotlight-copy h2 { font-size:clamp(32px,8.3vw,41px); }
  .spotlight-open { margin-top:-65px; margin-bottom:12px; }
  .intro-section,.journey,.faq-section { padding-top:58px; padding-bottom:58px; }
  .intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(32px,8.4vw,42px); }
  .audience-section { padding-top:58px; padding-bottom:62px; }
  .audience-editorial,.editorial-1 { min-height:440px; }
  .tools-section { margin-bottom:58px; padding:38px 20px; min-height:0; }
  .local-section,.quote-section { padding-top:58px; padding-bottom:58px; }
  .quote-copy h2 { font-size:clamp(33px,8.5vw,43px); }
  .final-cta { min-height:400px; padding:60px 18px; }
  .final-cta h2 { font-size:clamp(36px,9.3vw,48px); }
  footer { padding-top:52px; }
  .subpage-hero,.catalog-hero,.measures-hero { padding:48px 18px 54px; gap:34px; }
  .subpage-hero h1,.catalog-hero h1 { font-size:clamp(36px,9.5vw,47px); }
  .measures-hero h1 { font-size:clamp(30px,7.8vw,38px); }
  .catalog-mark { width:min(270px,72vw); }
  .measure-illustration { width:min(235px,64vw); }
  .catalog-grid,.measure-guide { padding-top:54px; padding-bottom:54px; }
  .catalog-admin-note,.measure-warning { margin-bottom:54px; }
  .subpage-cta { min-height:330px; padding:54px 18px; }
  .subpage-cta h2 { font-size:clamp(34px,8.7vw,46px); }
  .simulator-heading { padding:48px 18px 32px; }
  .simulator-heading h1 { font-size:clamp(34px,8.5vw,43px); }
  .contact-hero { padding:52px 18px; gap:30px; }
  .contact-hero h1 { font-size:clamp(36px,9.2vw,46px); }
  .contact-hero aside { padding:25px 20px; }
  .contact-options { padding:48px 18px; grid-template-columns:1fr; }
  .contact-options>a,.contact-options>article { min-height:0; }
  .contact-note { padding:54px 18px; gap:24px; }
  .contact-note h2 { font-size:clamp(32px,8.3vw,42px); }
}

@media (max-width:460px) {
  .product-visual { min-height:360px; }
  .product-more article { grid-template-columns:74px 1fr; }
  .mini-product-photo { width:72px; }
  .spotlight-preview-link { min-height:330px; }
  .audience-editorial,.editorial-1 { min-height:420px; }
  .footer-mark { width:86px; height:101px; }
  .footer-brand .footer-mark img { width:366px; }
  .contact-options svg { width:38px; height:38px; }
}

/* Refinamento v3: leitura humana, peças em destaque e simulador original */
.announcement { font-size:11px; letter-spacing:.055em; }
.desktop-nav a,.catalog-link { font-size:13px; }
.eyebrow,.section-label,.section-heading span,.journey-intro>span,.tools-copy>span,.local-copy>span,.faq-section>div>span,.final-cta>span { font-size:11px; letter-spacing:.1em; }
.hero h1 { font-size:clamp(48px,5vw,76px); line-height:1.06; letter-spacing:-.012em; }
.hero-copy>p { font-size:17px; line-height:1.78; }
.hero-assurance { font-size:12px; }
.text-link,.wa-button { font-size:13px; }
.ticker { font-size:12px; }
.intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(38px,4vw,60px); line-height:1.12; letter-spacing:-.01em; }
.intro-section>div:nth-child(2)>p,.journey-intro p,.tools-copy p,.local-copy p { font-size:16px; }
.section-heading>p { font-size:15px; }
.journey-list span { font-size:13px; line-height:1.55; }
.journey-list li>i,.journey-intro a { font-size:12px; }
.journey-list b { font-size:20px; }
.tool-pill b { font-size:14px; }
.tool-pill small { font-size:11px; }
.local-copy b { font-size:11px; }
.faq-list button>span { font-size:16px; }
.faq-list button p { font-size:14px; }
.final-cta h2 { font-size:clamp(42px,5vw,72px); letter-spacing:-.012em; }
.final-cta>small { font-size:11px; }

/* Camisetas e baby look: presença visual, sem aparência de lista editorial. */
.product-showcase {
  padding:96px max(24px,calc((100vw - 1420px)/2));
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:52px 72px;
  align-items:center;
  overflow:hidden;
  background:linear-gradient(145deg,#fff 0 46%,#fff8e5 46% 67%,#f1f7ff 67%);
  border-bottom:1px solid var(--line);
}
.product-copy { position:relative; z-index:3; }
.product-copy>span { color:#b61462; font-size:12px; font-weight:800; letter-spacing:.1em; }
.product-copy h2 { max-width:700px; margin:18px 0; font:600 clamp(40px,4.25vw,64px)/1.1 "Sora"; letter-spacing:-.012em; }
.product-copy p { max-width:640px; margin:0; color:var(--muted); font-size:16px; line-height:1.8; }
.product-copy>a { margin-top:28px; display:inline-flex; align-items:center; gap:8px; padding-bottom:5px; border-bottom:1px solid #b61462; color:#b61462; font-size:13px; font-weight:800; }
.product-copy>a svg { width:18px; }
.product-tags { margin-top:30px; display:flex; flex-wrap:wrap; gap:9px; }
.product-tags b { padding:9px 13px; border:1px solid #eadde5; border-radius:999px; background:#fff; font-size:12px; }
.product-visual { min-height:590px; position:relative; isolation:isolate; }
.product-shape { position:absolute; z-index:-1; border-radius:50%; }
.shape-pink { width:440px; height:440px; left:4%; top:3%; background:linear-gradient(145deg,#ffd5e8,#fff0c9); }
.shape-blue { width:320px; height:320px; right:2%; bottom:4%; background:linear-gradient(145deg,#d9edff,#e9e0ff); }
.product-garment { width:62%; aspect-ratio:1; position:absolute; }
.product-garment>span,.product-garment>img,.mini-garment>span,.mini-garment>img { width:100%; height:100%; position:absolute; inset:0; object-fit:contain; }
.product-garment>span,.mini-garment>span { background:var(--garment-color); -webkit-mask-size:contain; mask-size:contain; -webkit-mask-position:center; mask-position:center; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; }
.product-garment>img,.mini-garment>img { mix-blend-mode:multiply; }
.product-garment>b { position:absolute; z-index:3; padding:9px 13px; border-radius:999px; background:#fff; box-shadow:0 13px 32px rgba(23,19,29,.11); font-size:11px; letter-spacing:.08em; }
.garment-shirt { left:-1%; top:2%; --garment-color:#f4f3ee; transform:rotate(-4deg); }
.garment-shirt>b { left:6%; bottom:20%; color:#b61462; }
.garment-baby { right:-1%; bottom:-1%; --garment-color:#ff5f75; transform:rotate(5deg); }
.garment-baby>b { right:8%; bottom:16%; color:#276ebd; }
.product-more { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.product-more article { min-height:150px; padding:18px 22px; border:1px solid var(--line); border-radius:26px; display:grid; grid-template-columns:112px 1fr; gap:18px; align-items:center; background:rgba(255,255,255,.91); box-shadow:0 14px 35px rgba(39,28,50,.045); }
.product-more article>span { display:grid; gap:7px; }
.product-more article>span>b { font:600 18px "Sora"; }
.product-more article small { color:var(--muted); font-size:13px; line-height:1.55; }
.mini-garment { width:106px; aspect-ratio:1; position:relative; }
.mini-oversized { --garment-color:#278eff; }
.mini-hoodie { --garment-color:#ffbf2b; }
.mini-icon { width:82px; height:82px; border-radius:24px; display:grid; place-items:center; background:linear-gradient(145deg,#ffe2ef,#fff5c8); color:var(--pink); transform:rotate(-4deg); }
.mini-icon svg { width:42px; height:42px; stroke-width:1.4; }

/* Prévia original da Home, integrada à nova paleta. */
.simulator-spotlight {
  margin:28px max(18px,calc((100vw - 1480px)/2));
  padding:64px;
  border:1px solid #ded8eb;
  border-radius:38px;
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:70px;
  align-items:center;
  background:linear-gradient(135deg,#f7f2ff,#fff7e4 52%,#ecf6ff);
  box-shadow:0 25px 70px rgba(43,29,61,.08);
}
.spotlight-copy>small { color:#7d51d6; font-size:11px; font-weight:800; letter-spacing:.1em; }
.spotlight-copy h2 { margin:18px 0; font:600 clamp(38px,4vw,58px)/1.09 "Sora"; letter-spacing:-.012em; }
.spotlight-copy>p { max-width:600px; margin:0; color:var(--muted); font-size:15px; line-height:1.75; }
.spotlight-copy ol { margin:26px 0; padding:0; list-style:none; border-top:1px solid rgba(23,19,29,.13); }
.spotlight-copy li { min-height:76px; padding:15px 0; border-bottom:1px solid rgba(23,19,29,.13); display:grid; grid-template-columns:38px 1fr; gap:12px; align-items:center; }
.spotlight-copy li>i { color:var(--coral); font-size:11px; font-style:normal; font-weight:800; }
.spotlight-copy li>span { display:grid; gap:4px; }
.spotlight-copy li b { font-size:14px; }
.spotlight-copy li small { color:var(--muted); font-size:12px; }
.spotlight-copy>a { min-height:50px; padding:0 18px; display:inline-flex; align-items:center; gap:24px; border-radius:14px; background:var(--coral); color:#fff; font-size:13px; font-weight:800; box-shadow:0 14px 34px rgba(255,104,76,.22); }
.spotlight-copy>a b { font-size:17px; }
.spotlight-stage { min-width:0; padding:20px; border:1px solid rgba(23,19,29,.13); border-radius:27px; background:rgba(255,255,255,.66); box-shadow:inset 0 1px 0 rgba(255,255,255,.8); }
.spotlight-toolbar { padding:2px 2px 12px; display:grid; grid-template-columns:1fr 1fr auto; gap:12px; align-items:end; }
.spotlight-toolbar>div>span { display:block; margin:0 0 7px 2px; color:#6d6672; font-size:9px; font-weight:800; letter-spacing:.08em; }
.spot-segment { padding:4px; border:1px solid #ddd7e1; border-radius:12px; display:grid; grid-template-columns:1fr 1fr; background:#f0edf3; }
.spot-segment button { min-height:37px; padding:0 15px; border:0; border-radius:9px; background:transparent; color:#5f5865; font-size:11px; font-weight:700; cursor:pointer; }
.spot-segment button.active { background:#fff; color:var(--ink); box-shadow:0 4px 12px rgba(23,19,29,.09); }
.spot-colors { height:46px; display:flex; align-items:center; gap:8px; }
.spot-colors button { width:27px; height:27px; padding:0; border:2px solid #cac2cd; border-radius:50%; background:var(--swatch); box-shadow:inset 0 0 0 2px #fff; cursor:pointer; }
.spot-colors button.active { outline:2px solid var(--coral); outline-offset:2px; }
.spotlight-preview-link { min-height:490px; padding:15px 15px 0; border:1px solid #ddd7e1; border-radius:22px; display:flex; flex-direction:column; align-items:center; overflow:hidden; background:radial-gradient(circle at 50% 36%,#fff 0 20%,transparent 55%),linear-gradient(145deg,#f6f2fa,#eff6fb); }
.spotlight-preview { width:min(520px,100%); flex:1; position:relative; }
.spotlight-garment-color,.spotlight-preview>img { width:100%; height:100%; position:absolute; inset:0; object-fit:contain; }
.spotlight-garment-color { background:var(--spot-color); -webkit-mask-size:contain; mask-size:contain; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; transition:.25s; }
.spotlight-preview>img { z-index:2; mix-blend-mode:multiply; transition:opacity .2s,transform .35s; }
.spotlight-preview-link:hover .spotlight-preview>img { transform:scale(1.018); }
.spotlight-sample-art { width:23%; aspect-ratio:1; padding:8px; position:absolute; left:38.5%; top:35%; z-index:4; border:2px dashed var(--coral); display:grid; place-content:center; text-align:center; background:rgba(35,27,40,.76); color:#fff; }
.spotlight-sample-art small { font-size:9px; }
.spotlight-sample-art strong { font-size:13px; }
.spotlight-sample-art i { width:7px; height:7px; position:absolute; border:1px solid var(--coral); background:#fff; }
.spotlight-sample-art i:nth-of-type(1){left:-5px;top:-5px}.spotlight-sample-art i:nth-of-type(2){right:-5px;top:-5px}.spotlight-sample-art i:nth-of-type(3){left:-5px;bottom:-5px}.spotlight-sample-art i:nth-of-type(4){right:-5px;bottom:-5px}
.spotlight-view-label { padding:8px 12px; position:absolute; z-index:5; right:11%; top:8%; border-radius:999px; background:#fff; font-size:10px; font-weight:800; letter-spacing:.05em; }
.spotlight-open { min-height:48px; margin-top:-60px; padding:0 20px; position:relative; z-index:6; border-radius:999px; display:flex; align-items:center; gap:36px; background:var(--coral); color:#fff; font-size:12px; }
.spotlight-open i { font-style:normal; }
.spotlight-stage>p { margin:16px 0 2px; display:flex; justify-content:center; align-items:center; gap:7px; color:#6d6672; font-size:11px; text-align:center; }
.spotlight-stage>p>i { width:6px; height:6px; border-radius:50%; background:var(--green); }

/* Públicos: recortes transparentes sobre painéis, não cards de blog. */
.audience-editorial-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.audience-editorial { min-height:500px; position:relative; overflow:hidden; border-radius:38px; display:grid; isolation:isolate; }
.audience-editorial::before { content:""; width:260px; height:260px; position:absolute; z-index:-1; border:1px dashed rgba(23,19,29,.15); border-radius:50%; }
.audience-editorial.coral { background:linear-gradient(125deg,#ffe0e9,#fff2bd 58%,#dcecff); }
.audience-editorial.blue { background:linear-gradient(145deg,#dcecff,#efebff 55%,#fff); }
.audience-editorial.yellow { background:linear-gradient(145deg,#fff0ad,#ffe5ec 58%,#fff); }
.audience-editorial img { width:100%; height:100%; min-height:0; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 24px 26px rgba(42,28,50,.12)); }
.audience-copy { position:relative; z-index:3; }
.audience-copy>span { display:inline-flex; padding:7px 10px; border:1px solid rgba(23,19,29,.12); border-radius:999px; background:rgba(255,255,255,.58); font-size:10px; font-weight:800; letter-spacing:.08em; }
.audience-copy h3 { margin:15px 0 11px; font:600 clamp(28px,2.7vw,43px)/1.1 "Sora"; letter-spacing:-.01em; }
.audience-copy p { max-width:560px; margin:0; color:#5d5661; font-size:14px; line-height:1.7; }
.audience-copy a { margin-top:20px; display:inline-flex; align-items:center; gap:8px; padding-bottom:4px; border-bottom:1px solid var(--ink); font-size:12px; font-weight:800; }
.editorial-1 { min-height:570px; grid-column:1/-1; grid-template-columns:.72fr 1.28fr; align-items:center; }
.editorial-1 .audience-copy { padding:60px 0 60px 60px; }
.editorial-1 img { max-height:570px; }
.editorial-1::before { right:36%; top:-80px; }
.editorial-2,.editorial-3 { grid-template-rows:auto 1fr; }
.editorial-2 .audience-copy,.editorial-3 .audience-copy { padding:38px 38px 0; }
.editorial-2 .audience-copy h3,.editorial-3 .audience-copy h3 { font-size:clamp(27px,2.2vw,36px); }
.editorial-2 img,.editorial-3 img { max-height:315px; align-self:end; }
.editorial-2::before,.editorial-3::before { right:-50px; bottom:-50px; }
.cotton-note p { font-size:14px; }
.cotton-note small { font-size:11px; }

/* Formulário restaurado na Home. */
.quote-section { padding:100px max(24px,calc((100vw - 1380px)/2)); display:grid; grid-template-columns:.78fr 1.22fr; gap:90px; align-items:start; background:#fff8f2; }
.quote-copy { position:sticky; top:125px; }
.quote-copy>span { color:#b61462; font-size:11px; font-weight:800; letter-spacing:.1em; }
.quote-copy h2 { margin:17px 0; font:600 clamp(38px,4vw,58px)/1.1 "Sora"; letter-spacing:-.01em; }
.quote-copy>p { color:var(--muted); font-size:15px; line-height:1.8; }
.quote-assurance { margin-top:28px; display:grid; gap:12px; }
.quote-assurance b { display:flex; align-items:center; gap:9px; font-size:13px; }
.quote-assurance svg { width:20px; color:var(--pink); }
.quote-form { padding:38px; border:1px solid #e8dfe4; border-radius:30px; display:grid; grid-template-columns:1fr 1fr; gap:20px; background:#fff; box-shadow:0 24px 60px rgba(57,36,49,.07); }
.quote-form label { display:grid; gap:8px; color:#46404a; font-size:12px; font-weight:800; }
.quote-form input,.quote-form select,.quote-form textarea { width:100%; min-height:50px; padding:12px 14px; border:1px solid #dcd5df; border-radius:13px; background:#fff; color:var(--ink); font:500 14px "Plus Jakarta Sans"; outline:none; }
.quote-form textarea { resize:vertical; }
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus { border-color:var(--pink); box-shadow:0 0 0 3px rgba(255,8,120,.09); }
.form-wide { grid-column:1/-1; }
.form-file { min-height:94px; padding:18px; border:1px dashed #d990b1; border-radius:16px; align-content:center; background:#fff7fb; cursor:pointer; }
.form-file>b { display:flex; align-items:center; gap:8px; color:#a71559; font-size:13px; }
.form-file>b svg { width:18px; }
.form-file>span { color:var(--muted); font-size:11px; font-weight:500; }
.form-file input { display:none; }
.form-submit { min-height:54px; padding:0 20px; border:0; border-radius:15px; display:flex; justify-content:center; align-items:center; gap:10px; background:var(--green); color:#fff; font-size:13px; font-weight:800; cursor:pointer; box-shadow:0 14px 34px rgba(30,188,107,.2); }
.form-submit svg { width:19px; }
.quote-form>small { color:var(--muted); font-size:11px; line-height:1.6; text-align:center; }
.form-status { margin:0; padding:13px; border-radius:12px; background:#eafbf3; color:#176941; font-size:12px; text-align:center; }

/* Simulador completo: lógica e recursos do original do ZIP. */
.simulator-full-wrap { margin:0 max(18px,calc((100vw - 1420px)/2)) 90px; }
.full-simulator { min-height:840px; border:1px solid var(--line); border-radius:32px; display:grid; grid-template-columns:365px 1fr; overflow:hidden; background:#fff; box-shadow:0 28px 80px rgba(35,22,42,.09); }
.full-tool-panel { padding:30px; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:22px; background:#fff; overflow:auto; }
.full-panel-kicker { color:#b61462; font-size:10px; font-weight:800; letter-spacing:.1em; }
.full-tool-panel>h2 { margin:-10px 0 2px; font:600 32px/1.1 "Sora"; }
.full-tool-panel>label,.full-control { display:grid; gap:9px; }
.full-tool-panel label>span,.full-control>span { color:#4b4450; font-size:12px; font-weight:800; }
.full-tool-panel select,.full-text-composer>input { width:100%; min-height:46px; padding:0 12px; border:1px solid #d9d4dc; border-radius:12px; background:#fff; color:var(--ink); font:600 13px "Plus Jakarta Sans"; }
.full-side-switch { padding:4px; border-radius:13px; display:grid; grid-template-columns:1fr 1fr; background:#f3f0f4; }
.full-side-switch button { min-height:39px; border:0; border-radius:10px; background:transparent; font-size:12px; font-weight:700; cursor:pointer; }
.full-side-switch button.active { background:#fff; box-shadow:0 4px 12px rgba(23,19,29,.09); }
.full-swatches { display:flex; flex-wrap:wrap; gap:10px; }
.full-swatches button { width:30px; height:30px; border:2px solid #dcd6df; border-radius:50%; background:var(--swatch); box-shadow:inset 0 0 0 2px #fff; cursor:pointer; }
.full-swatches button.active { outline:2px solid var(--pink); outline-offset:2px; }
.full-upload-control { min-height:98px; padding:15px; border:1px dashed #dc90b2; border-radius:15px; align-content:center; background:#fff7fb; cursor:pointer; }
.full-upload-control>b { color:#a61459; font-size:12px; }
.full-upload-control>small { color:var(--muted); font-size:10px; }
.full-upload-control input { display:none; }
.full-text-composer>div { display:grid; grid-template-columns:1fr 42px auto; gap:7px; }
.full-text-composer>div select { min-width:0; }
.full-text-composer input[type="color"] { width:42px; height:46px; padding:4px; border:1px solid #d9d4dc; border-radius:10px; background:#fff; }
.full-text-composer button,.full-remove-layer { padding:0 12px; border:0; border-radius:10px; background:var(--ink); color:#fff; font-size:11px; font-weight:800; cursor:pointer; }
.full-selected-controls { padding:14px; border-radius:14px; background:#f5f3ff; }
.full-selected-controls>small { color:var(--muted); font-size:10px; line-height:1.5; }
.full-selected-controls.is-disabled { opacity:.55; }
.full-remove-layer { min-height:38px; background:#fff; border:1px solid #e7b3c9; color:#a61459; }
.full-remove-layer:disabled { cursor:not-allowed; }
.full-layer-list { max-height:155px; overflow:auto; display:grid; gap:6px; }
.full-layer-list>small { color:var(--muted); font-size:10px; }
.full-layer-row { min-height:38px; padding:3px; border:1px solid #e3dde5; border-radius:10px; display:grid; grid-template-columns:1fr 34px; background:#fff; }
.full-layer-row.is-selected { border-color:#e06d9f; background:#fff7fb; }
.full-layer-choose,.full-layer-delete { min-width:0; border:0; background:transparent; cursor:pointer; }
.full-layer-choose { overflow:hidden; text-align:left; text-overflow:ellipsis; white-space:nowrap; font-size:10px; font-weight:700; }
.full-layer-delete { color:#a61459; font-size:18px; }
.full-browser-note { margin-top:auto; color:var(--muted); font-size:10px; line-height:1.5; }
.full-preview-column { min-width:0; padding:30px; display:grid; align-content:center; background:linear-gradient(145deg,#f8f3ff,#edf6ff); }
.full-preview { min-height:630px; position:relative; display:grid; place-items:center; align-content:center; }
.full-shirt-stage { width:min(650px,100%); aspect-ratio:1; position:relative; transition:opacity .18s,transform .35s; }
.full-shirt-stage.is-turning-out { opacity:0; transform:rotateY(82deg) scale(.96); }
.full-shirt-stage.is-turning-in { animation:full-shirt-in .36s ease; }
.full-shirt-color-layer,.full-shirt-render { width:100%; height:100%; position:absolute; inset:0; object-fit:contain; }
.full-shirt-color-layer { background:var(--shirt-color); -webkit-mask-image:var(--shirt-mask); mask-image:var(--shirt-mask); -webkit-mask-size:contain; mask-size:contain; -webkit-mask-position:center; mask-position:center; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; }
.full-shirt-render { z-index:2; mix-blend-mode:multiply; pointer-events:none; }
.full-shirt-print-area { position:absolute; z-index:5; touch-action:none; }
.full-shirt-stage[data-garment="tshirt"][data-side-view="front"] .full-shirt-print-area { left:32%;top:25.5%;width:36%;height:35%; }
.full-shirt-stage[data-garment="tshirt"][data-side-view="back"] .full-shirt-print-area { left:32%;top:21.5%;width:36%;height:35%; }
.full-shirt-stage[data-garment="baby-look"][data-side-view="front"] .full-shirt-print-area { left:33%;top:28%;width:34%;height:38%; }
.full-shirt-stage[data-garment="baby-look"][data-side-view="back"] .full-shirt-print-area { left:33%;top:25%;width:34%;height:38%; }
.full-shirt-stage[data-garment="dry-fit"][data-side-view="front"] .full-shirt-print-area { left:32%;top:26%;width:36%;height:38%; }
.full-shirt-stage[data-garment="dry-fit"][data-side-view="back"] .full-shirt-print-area { left:32%;top:23%;width:36%;height:38%; }
.full-shirt-stage[data-garment="polo"][data-side-view="front"] .full-shirt-print-area { left:34%;top:30%;width:32%;height:34%; }
.full-shirt-stage[data-garment="polo"][data-side-view="back"] .full-shirt-print-area { left:33%;top:25%;width:34%;height:36%; }
.full-shirt-stage[data-garment="hoodie"][data-side-view="front"] .full-shirt-print-area { left:33%;top:24%;width:34%;height:30%; }
.full-shirt-stage[data-garment="hoodie"][data-side-view="back"] .full-shirt-print-area { left:32.5%;top:23%;width:35%;height:32%; }
.full-print-item { --item-scale:1; min-width:56px; min-height:28px; position:absolute; display:grid; place-items:center; transform:translate(-50%,-50%) scale(var(--item-scale)); transform-origin:center; touch-action:none; cursor:grab; user-select:none; }
.full-print-item:active { cursor:grabbing; }
.full-print-image img { width:128px; max-height:145px; object-fit:contain; pointer-events:none; }
.full-print-text span { padding:2px 5px; font-size:22px; font-weight:700; line-height:1.05; white-space:nowrap; pointer-events:none; }
.full-print-item.is-selected { outline:2px dashed var(--coral); outline-offset:5px; }
.full-resize-handle { width:10px; height:10px; position:absolute; display:none; border:1px solid var(--coral); background:#fff; }
.full-print-item.is-selected .full-resize-handle { display:block; }
.full-resize-handle.is-nw{left:-10px;top:-10px}.full-resize-handle.is-ne{right:-10px;top:-10px}.full-resize-handle.is-sw{left:-10px;bottom:-10px}.full-resize-handle.is-se{right:-10px;bottom:-10px}
.full-view-badge { padding:8px 11px; position:absolute; top:25px; right:25px; z-index:7; border-radius:999px; background:#fff; color:#5d5561; font-size:10px; font-weight:800; letter-spacing:.08em; box-shadow:0 9px 24px rgba(23,19,29,.09); }
.full-preview>b { margin-top:-28px; position:relative; z-index:7; font-size:12px; }
.full-disclaimer { margin:5px 0 14px; padding:16px; border:1px solid #e1dbe4; border-radius:15px; background:rgba(255,255,255,.8); }
.full-disclaimer p { margin:0 0 12px; color:var(--muted); font-size:11px; line-height:1.55; }
.full-disclaimer label { display:flex; align-items:flex-start; gap:8px; color:#46404a; font-size:11px; font-weight:700; }
.full-disclaimer input { margin-top:2px; accent-color:var(--pink); }
.full-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.full-actions button { min-height:49px; padding:0 14px; border:0; border-radius:13px; background:var(--ink); color:#fff; font-size:12px; font-weight:800; cursor:pointer; }
.full-actions .full-share { background:var(--green); }
.full-actions button:disabled { opacity:.42; cursor:not-allowed; }
.full-share-note { margin:10px 0 0; color:var(--muted); font-size:10px; text-align:center; }
@keyframes full-shirt-in { from{opacity:0;transform:rotateY(-82deg) scale(.96)} to{opacity:1;transform:none} }

/* Rodapé: nova marca sem filtro e textos confortáveis. */
footer { gap:55px; }
.footer-brand img { width:250px; padding:11px 14px; border-radius:15px; background:#fff; filter:none; }
.footer-brand p { max-width:420px; font-size:14px; line-height:1.75; }
footer>div:not(.footer-brand):not(.footer-bottom) { gap:13px; font-size:14px; line-height:1.45; }
footer b { margin-bottom:10px; font-size:11px; }
.footer-bottom { font-size:11px; }

@media (max-width:1100px) {
  .product-showcase { grid-template-columns:1fr 1fr; gap:42px; }
  .product-more { grid-template-columns:1fr; }
  .simulator-spotlight { padding:45px; grid-template-columns:1fr; }
  .spotlight-copy { display:grid; grid-template-columns:1fr 1fr; gap:0 42px; }
  .spotlight-copy>small,.spotlight-copy>a { justify-self:start; }
  .spotlight-copy h2,.spotlight-copy>p { grid-column:1; }
  .spotlight-copy ol { grid-column:2; grid-row:1/5; margin:0; }
  .full-simulator { grid-template-columns:320px 1fr; }
  .full-tool-panel { padding:24px; }
  .quote-section { gap:50px; }
}

@media (max-width:780px) {
  .announcement { font-size:10px; }
  .hero h1 { font-size:clamp(40px,10.5vw,54px); }
  .hero-copy>p { font-size:16px; }
  .intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(34px,8.7vw,46px); }
  .product-showcase { padding:70px 18px; grid-template-columns:1fr; gap:24px; }
  .product-copy h2 { font-size:clamp(36px,10vw,50px); }
  .product-visual { min-height:470px; }
  .product-more { margin-top:10px; }
  .product-more article { grid-template-columns:92px 1fr; }
  .mini-garment { width:88px; }
  .simulator-spotlight { margin:14px; padding:34px 20px; border-radius:28px; gap:35px; }
  .spotlight-copy { display:block; }
  .spotlight-copy h2 { font-size:clamp(35px,9vw,48px); }
  .spotlight-copy ol { margin:24px 0; }
  .spotlight-toolbar { grid-template-columns:1fr 1fr; }
  .spot-color-control { grid-column:1/-1; }
  .spotlight-preview-link { min-height:420px; }
  .audience-editorial-grid { grid-template-columns:1fr; }
  .audience-editorial { min-height:500px; grid-column:auto; }
  .editorial-1 { grid-template-columns:1fr; grid-template-rows:auto 1fr; }
  .editorial-1 .audience-copy,.editorial-2 .audience-copy,.editorial-3 .audience-copy { padding:30px 26px 0; }
  .editorial-1 img,.editorial-2 img,.editorial-3 img { max-height:330px; align-self:end; }
  .quote-section { padding:75px 18px; grid-template-columns:1fr; gap:35px; }
  .quote-copy { position:static; }
  .quote-form { padding:25px 20px; grid-template-columns:1fr; }
  .quote-form>* { grid-column:1; }
  .simulator-heading h1 { font-size:clamp(40px,10vw,54px); }
  .simulator-full-wrap { margin:0 12px 65px; }
  .full-simulator { grid-template-columns:1fr; border-radius:23px; }
  .full-tool-panel { border-right:0; border-bottom:1px solid var(--line); }
  .full-preview-column { padding:18px 12px 25px; }
  .full-preview { min-height:460px; }
  .full-view-badge { top:15px; right:15px; }
  .full-print-image img { width:90px; max-height:105px; }
  .full-print-text span { font-size:16px; }
  footer { font-size:14px; }
}

@media (max-width:460px) {
  .product-visual { min-height:390px; }
  .product-garment { width:70%; }
  .shape-pink { width:300px;height:300px; }
  .shape-blue { width:220px;height:220px; }
  .product-more article { min-height:130px; padding:14px; grid-template-columns:78px 1fr; }
  .mini-garment { width:76px; }
  .mini-icon { width:68px;height:68px; }
  .spotlight-stage { padding:12px; }
  .spotlight-toolbar { grid-template-columns:1fr; }
  .spot-color-control { grid-column:auto; }
  .spotlight-preview-link { min-height:350px; padding:8px; }
  .spotlight-sample-art { width:27%; left:36.5%; }
  .spotlight-view-label { right:4%; top:4%; font-size:8px; }
  .spotlight-stage>p { font-size:10px; }
  .audience-editorial { min-height:460px; border-radius:28px; }
  .audience-copy h3,.editorial-2 .audience-copy h3,.editorial-3 .audience-copy h3 { font-size:28px; }
  .quote-form { padding:22px 16px; }
  .full-tool-panel { padding:22px 17px; }
  .full-text-composer>div { grid-template-columns:1fr 42px; }
  .full-text-composer>div button { grid-column:1/-1; min-height:42px; }
  .full-preview { min-height:370px; }
  .full-actions { grid-template-columns:1fr; }
  .footer-brand img { width:230px; }
  .footer-bottom { font-size:11px; }
}

@keyframes scroll-fade-reveal-b {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: none; }
}

@keyframes tw-shimmer {
  from { background-position: 200% 0; }
  to { background-position: -200% 0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration: .01ms!important; animation-iteration-count: 1!important; transition-duration: .01ms!important; }
}

@media (max-width: 780px) {
  .announcement { padding:8px 14px; grid-template-columns:1fr; text-align:center; }
  .announcement>span,.announcement>a { display:none; }
  .announcement p { justify-content:center; flex-wrap:wrap; gap:5px; font-size:8px; }
  .site-header { height:72px; padding:0 16px; }
  .brand { width:156px; height:54px; }
  .wa-button.small { display:none; }
  .mobile-nav { top:72px; }
  .hero { min-height:0; padding:54px 20px 35px; grid-template-columns:1fr; gap:34px; }
  .hero h1 { font-size:clamp(43px,12vw,64px); line-height:1.07; letter-spacing:-.012em; }
  .hero-copy>p { font-size:14px; }
  .hero-actions { align-items:stretch; flex-direction:column; gap:16px; }
  .hero-actions .wa-button { width:100%; }
  .text-link { align-self:flex-start; }
  .hero-assurance { display:grid; gap:9px; }
  .hero-visual { min-height:480px; }
  .hero-visual>img { width:115%; max-width:none; }
  .hero-badge { width:100px;height:100px;bottom:12px; }
  .floating-note { font-size:8px; padding:9px 11px; }
  .note-side { top:42%; }
  .ticker { justify-content:flex-start; flex-wrap:nowrap; overflow:hidden; font-size:9px; }
  .intro-section,.journey,.faq-section { padding:80px 20px; grid-template-columns:1fr; gap:34px; }
  .product-line { padding:60px 20px; grid-template-columns:1fr; gap:34px; }
  .product-models>div { grid-template-columns:1fr; gap:6px; }
  .section-label { display:none; }
  .process-stroke { grid-column:auto; }
  .intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(37px,10vw,50px); }
  .audience-section { padding:75px 18px; }
  .section-heading { grid-template-columns:1fr; gap:18px; }
  .audience-grid { min-height:0; grid-template-columns:1fr; grid-template-rows:none; }
  .audience-card { min-height:440px; }
  .audience-1 { grid-row:auto; }
  .audience-2,.audience-3 { min-height:350px; }
  .audience-overlay { padding:25px; }
  .cotton-note { grid-template-columns:auto 1fr; }
  .cotton-note small { grid-column:1/-1; }
  .journey-list li { grid-template-columns:34px 1fr auto; }
  .journey-list b { font-size:17px; }
  .tools-section { margin:0 14px 80px; padding:45px 20px; grid-template-columns:1fr; gap:32px; border-radius:28px; }
  .tools-stage { min-height:345px; }
  .tool-pill { width:92%; }
  .pill-two { right:0; }
  .local-section { padding:80px 20px; grid-template-columns:1fr; gap:25px; }
  .local-number { font-size:120px; }
  .faq-list button>span { font-size:12px; }
  .faq-list button p { margin:0 0 0 36px; }
  .final-cta { min-height:500px; padding:80px 20px; }
  .final-cta h2 { font-size:clamp(42px,12vw,62px); }
  footer { padding:65px 24px 24px; grid-template-columns:1fr 1fr; gap:36px; }
  .footer-brand { grid-column:1/-1; }
  .footer-bottom { flex-direction:column; gap:8px; }
}

@media (max-width: 420px) {
  .hero { padding-left:16px; padding-right:16px; }
  .hero h1 { font-size:40px; line-height:1.07; letter-spacing:-.012em; }
  .hero-visual { min-height:410px; }
  .note-side { right:-8px; }
  .audience-card { min-height:390px; border-radius:24px; }
  .audience-overlay h3 { font-size:27px; }
  .journey-list li { grid-template-columns:30px 1fr; }
  .journey-list li>svg { display:none; }
  .tool-pill { width:100%; left:0; right:0; }
  .tools-scribble { display:none; }
  .local-number { font-size:96px; }
  footer { grid-template-columns:1fr; }
  .footer-brand,.footer-bottom { grid-column:auto; }
  .subpage-hero h1,.simulator-heading h1 { font-size:39px; letter-spacing:-.01em; }
  .catalog-mark,.measure-illustration { width:280px; max-width:86vw; }
  .catalog-grid article { padding:25px; }
  .simulator-controls { padding:22px 18px; }
  .simulator-note { border-radius:16px; justify-content:center; text-align:center; }
}
