:root {
  --bg:#08090b;
  --panel:#111318;
  --panel-2:#171a20;
  --ink:#f7f4ee;
  --muted:#aaa8a5;
  --line:rgba(255,255,255,.13);
  --orange:#f47a20;
  --orange-2:#ffad70;
  --shell:min(1280px,calc(100% - 48px));
  --duration-stagger:40ms;
  --duration-quick:150ms;
  --duration-fast:250ms;
  --duration-medium:350ms;
  --duration-slow:400ms;
  --ease-smooth-out:cubic-bezier(.22,1,.36,1);
  --stagger-dur:500ms;
  --stagger-distance:12px;
  --stagger-stagger:40ms;
  --stagger-blur:3px;
  --stagger-ease:cubic-bezier(.22,1,.36,1);
  --tilt-perspective:1000px;
  --tilt-return:1000ms;
  --tilt-return-ease:cubic-bezier(.22,1,.36,1);
  --tilt-follow:400ms;
  --tilt-follow-ease:cubic-bezier(.22,1,.36,1);
  --tilt-glare-opacity:.22;
  --tilt-glare-fade:300ms;
  --tilt-glare-ease:cubic-bezier(.22,1,.36,1);
  --modal-open-dur:250ms;
  --modal-close-dur:150ms;
  --modal-scale:.96;
  --modal-scale-close:.96;
  --modal-ease:cubic-bezier(.22,1,.36,1);
  --learn-shift:2px;
  --learn-in:350ms;
  --learn-out:350ms;
  --learn-ease:cubic-bezier(.22,1,.36,1);
}

html { scroll-padding-top:140px; }
body {
  overflow-x:hidden;
  background:
    radial-gradient(circle at 18% -12%,rgba(244,122,32,.09),transparent 30rem),
    var(--bg);
  text-rendering:optimizeLegibility;
}
body:before {
  position:fixed;
  z-index:-1;
  inset:0;
  content:"";
  pointer-events:none;
  opacity:.28;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,#000,transparent 70%);
}
::selection { background:var(--orange); color:#120b07; }
.eyebrow { color:#c0bbb6; font-size:11px; }
.button { min-height:48px; border-radius:12px; font-size:13px; letter-spacing:.01em; }
.button.primary {
  background:linear-gradient(135deg,#ff9a4c,var(--orange));
  color:#16100d;
  box-shadow:0 12px 35px rgba(244,122,32,.22),inset 0 1px rgba(255,255,255,.28);
}
.button.primary:hover { box-shadow:0 18px 44px rgba(244,122,32,.32),inset 0 1px rgba(255,255,255,.3); }
.button.ghost { background:rgba(14,16,20,.72); }
input[type="search"]::-webkit-search-cancel-button { appearance:none; }
.search input::placeholder,.mobile-search input::placeholder { color:#9b9792; opacity:1; }

/* Header and navigation */
.store-header {
  grid-template-columns:auto minmax(280px,620px) auto;
  gap:clamp(18px,3vw,40px);
  background:rgba(8,9,11,.8);
  box-shadow:0 8px 30px rgba(0,0,0,.1);
}
.store-header.is-scrolled { background:rgba(8,9,11,.96); border-color:rgba(255,255,255,.16); }
.header-quote {
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 17px;
  border:1px solid rgba(244,122,32,.44);
  border-radius:999px;
  background:rgba(244,122,32,.1);
  color:#ffd3b2;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
  transition:background var(--duration-fast) var(--ease-smooth-out),border-color var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out);
}
.header-quote:hover { transform:translateY(-2px); border-color:rgba(244,122,32,.8); background:rgba(244,122,32,.18); }
.category-nav { background:rgba(8,9,11,.88); }
.category-pill,.filter-chip,.season-pill { font-size:12px; }
body[data-catalog-step="categories"] .season-nav { display:none; }

/* Kinetic hero */
body[data-mode="portfolio"] .hero.professional-hero {
  display:grid!important;
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);
  width:var(--shell);
  min-height:520px;
  height:auto;
  margin:26px auto 0;
  border-radius:30px;
  background:
    radial-gradient(circle at 76% 42%,rgba(244,122,32,.19),transparent 29%),
    radial-gradient(circle at 90% 80%,rgba(255,255,255,.055),transparent 21%),
    linear-gradient(135deg,#121419 0%,#0a0b0e 62%,#11100f 100%);
  box-shadow:0 30px 100px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.05);
}
.professional-hero:before {
  position:absolute;
  inset:0;
  content:"";
  background:linear-gradient(90deg,rgba(244,122,32,.8),transparent 18%) top left/100% 1px no-repeat;
  pointer-events:none;
}
.professional-hero .hero-content {
  position:relative;
  z-index:3;
  max-width:760px;
  height:auto;
  padding:clamp(42px,6vw,78px);
}
.professional-hero .hero-content h1 {
  max-width:700px;
  margin-bottom:22px;
  font-size:clamp(56px,7vw,96px);
  line-height:.86;
  letter-spacing:-.07em;
}
.professional-hero .hero-content h1 em { text-shadow:0 0 45px rgba(244,122,32,.18); }
.professional-hero .hero-content>p:not(.eyebrow) { max-width:52ch; margin-bottom:28px; color:#d1cdc8; font-size:16px; line-height:1.65; }
.professional-hero .hero-actions { flex-wrap:wrap; }
.professional-hero .hero-actions .button { gap:10px; }
.professional-hero ul { flex-wrap:wrap; margin-top:28px; color:#b0aca8; font-size:12px; }
.hero-atmosphere,.hero-noise,.hero-scan { position:absolute; inset:0; pointer-events:none; }
.hero-noise {
  opacity:.13;
  background-image:radial-gradient(rgba(255,255,255,.48) .5px,transparent .5px);
  background-size:5px 5px;
  mask-image:linear-gradient(90deg,transparent 35%,#000);
}
.hero-scan {
  inset:-30% 0 auto;
  height:22%;
  opacity:.3;
  background:linear-gradient(to bottom,transparent,rgba(244,122,32,.18),transparent);
  animation:hero-scan 7s linear infinite;
}
.hero-stage { position:relative; z-index:2; min-height:520px; overflow:hidden; }
.hero-stage:before {
  position:absolute;
  inset:12% 4% 12% 0;
  content:"";
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  background:radial-gradient(circle,rgba(244,122,32,.1),transparent 55%);
  transform:rotate(-12deg);
}
.hero-axis { position:absolute; left:50%; top:50%; opacity:.28; background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent); }
.hero-axis-x { width:82%; height:1px; transform:translate(-50%,-50%); }
.hero-axis-y { width:1px; height:78%; background:linear-gradient(transparent,rgba(255,255,255,.48),transparent); transform:translate(-50%,-50%); }
.hero-orbit {
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  transform-style:preserve-3d;
}
.hero-orbit-a { width:72%; aspect-ratio:1; animation:orbit-a 13s linear infinite; }
.hero-orbit-b { width:50%; aspect-ratio:1; border-color:rgba(244,122,32,.38); animation:orbit-b 9s linear infinite reverse; }
.hero-orbit span { position:absolute; width:9px; height:9px; left:12%; top:8%; border-radius:50%; background:var(--orange); box-shadow:0 0 20px rgba(244,122,32,.9); }
.hero-orbit-b span { left:auto; right:3%; top:48%; width:6px; height:6px; background:#fff; }
.hero-object {
  position:absolute;
  left:50%;
  top:50%;
  width:220px;
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  animation:object-float 5s var(--ease-smooth-out) infinite alternate;
}
.hero-object-shell {
  position:absolute;
  inset:0;
  border:1px solid rgba(244,122,32,.48);
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(244,122,32,.03));
  clip-path:polygon(50% 0,92% 23%,92% 74%,50% 100%,8% 74%,8% 23%);
  box-shadow:inset 0 0 60px rgba(244,122,32,.12),0 0 50px rgba(244,122,32,.08);
  animation:shell-turn 16s linear infinite;
}
.hero-object-core {
  position:absolute;
  left:50%;
  top:50%;
  width:94px;
  height:94px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  background:radial-gradient(circle,#ff9b51,#e65e12 50%,rgba(244,122,32,.12) 52%);
  box-shadow:0 0 54px rgba(244,122,32,.46);
  transform:translate(-50%,-50%);
}
.hero-object-core img { width:62px; height:62px; filter:drop-shadow(0 4px 12px rgba(0,0,0,.38)); }
.hero-data { position:absolute; color:rgba(235,231,225,.55); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:10px; letter-spacing:.13em; }
.hero-data-a { left:9%; top:18%; }
.hero-data-b { right:7%; bottom:18%; }
.hero-data-c { right:10%; top:15%; color:rgba(255,174,112,.75); writing-mode:vertical-rl; }
.professional-hero .motion-toggle { z-index:6; }
.motion-paused .hero-scan,.motion-paused .hero-orbit,.motion-paused .hero-object,.motion-paused .hero-object-shell { animation-play-state:paused!important; }
@keyframes hero-scan { to { transform:translateY(760%); } }
@keyframes orbit-a { from { transform:translate(-50%,-50%) rotateX(66deg) rotateZ(0); } to { transform:translate(-50%,-50%) rotateX(66deg) rotateZ(360deg); } }
@keyframes orbit-b { from { transform:translate(-50%,-50%) rotateY(66deg) rotateZ(0); } to { transform:translate(-50%,-50%) rotateY(66deg) rotateZ(360deg); } }
@keyframes object-float { from { transform:translate(-50%,-48%) rotate(-1deg); } to { transform:translate(-50%,-54%) rotate(2deg); } }
@keyframes shell-turn { to { transform:rotate(360deg); } }

/* Three clear entry paths */
.intent-strip {
  width:var(--shell);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin:14px auto 54px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:#0d0f13;
}
.intent-strip a {
  min-width:0;
  min-height:145px;
  display:flex;
  flex-direction:column;
  padding:24px;
  border-right:1px solid var(--line);
  background:linear-gradient(145deg,rgba(255,255,255,.025),transparent);
  transition:background var(--duration-medium) var(--ease-smooth-out),transform var(--duration-medium) var(--ease-smooth-out);
}
.intent-strip a:last-child { border-right:0; }
.intent-strip a:hover { background:linear-gradient(145deg,rgba(244,122,32,.12),rgba(255,255,255,.025)); }
.intent-strip small { color:var(--orange-2); font-size:10px; font-weight:900; letter-spacing:.14em; }
.intent-strip strong { max-width:18ch; margin-top:10px; font-size:20px; line-height:1.1; letter-spacing:-.025em; }
.intent-strip span { display:flex; align-items:center; gap:7px; margin-top:auto; color:#bcb8b3; font-size:12px; font-weight:750; }
.intent-strip i { color:var(--orange-2); font-style:normal; transition:transform var(--duration-fast) var(--ease-smooth-out); }
.intent-strip a:hover i { transform:translateX(4px); }

/* Catalog hierarchy */
body[data-mode="portfolio"] .catalog-shell { margin-top:0; }
.catalog-heading h2 { max-width:18ch; font-size:clamp(34px,4.2vw,58px); }
.catalog-path { border-radius:14px; background:rgba(17,19,24,.72); }
.portfolio-disclosure { background:#0f1115; }
.discovery-card {
  border-radius:18px;
  background:linear-gradient(160deg,#171a20,#0d0f13);
  box-shadow:0 22px 60px rgba(0,0,0,.22);
}
.discovery-card-copy small,.card-kicker { font-size:10px; }
.discovery-card-copy>span { font-size:12px; }
.product-card { height:100%; border-radius:18px; background:linear-gradient(160deg,#13151a,#0e1014); }
.card-badge,.editorial-featured-label { font-size:10px; }
.card-kicker { color:#aaa6a2; }
.card-title { font-size:18px; }
.card-meta { color:#b1ada9; font-size:12px; }
.card-link { gap:7px; color:var(--orange-2); }
.card-link i { font-style:normal; }
.preview-button { min-height:34px; font-size:10px; }
.portfolio-disclosure summary span,.portfolio-disclosure p { font-size:12px; }
.empty-state { background:linear-gradient(145deg,rgba(244,122,32,.06),#0f1115); }

/* Process and footer */
.custom-order {
  min-height:360px;
  padding:clamp(34px,5vw,70px);
  border-radius:26px;
  background:
    linear-gradient(135deg,rgba(244,122,32,.15),transparent 45%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 64px),
    #111318;
}
.custom-order>div { max-width:760px; }
.custom-order p:not(.eyebrow) { color:#c1bcb8; font-size:15px; line-height:1.65; }
.brief-checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 24px; margin:24px 0 0; padding:0; list-style:none; }
.brief-checklist li { color:#d3cec9; font-size:12px; }
.brief-checklist li:before { content:"+"; margin-right:8px; color:var(--orange); font-weight:900; }
.trust-row { grid-template-columns:repeat(3,minmax(0,1fr)); }
.trust-row article { min-height:190px; padding:34px; background:#0e1014; }
.trust-row article>span { font-size:12px; }
.trust-row h3 { font-size:19px; }
.trust-row p { color:#aaa7a3; font-size:13px; line-height:1.6; }
footer { min-height:170px; }
footer p { color:#aaa7a3; font-size:13px; text-align:center; }
footer nav { display:flex; align-items:center; gap:18px; }
footer nav a { color:#bdb9b4; font-size:12px; font-weight:750; }
footer nav a:hover { color:var(--orange-2); }

/* One-scroll product dialog and truthful conversion panel */
.product-dialog {
  width:min(1180px,calc(100% - 40px));
  max-height:calc(100dvh - 40px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  border-radius:24px;
  background:#101217;
}
.product-dialog::backdrop { background:rgba(0,0,0,.76); backdrop-filter:blur(12px) saturate(.7); }
.detail-layout { align-items:start; min-height:680px; }
.gallery { position:sticky; top:0; align-self:start; min-height:680px; }
.gallery-main { height:min(62vh,570px); }
.detail-copy { overflow:visible; padding:58px 44px 44px; }
.detail-copy h2 { font-size:clamp(38px,4.2vw,58px); }
.detail-description { color:#c3bfba; font-size:15px; line-height:1.7; }
.detail-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
.detail-facts [data-detail-size-fact][hidden] + div { grid-column:1/-1; }
.detail-facts dt { color:#a19d98; font-size:10px; }
.detail-facts dd { font-size:12px; line-height:1.4; }
.detail-notes p,.portfolio-detail-note { color:#c0b7b0; font-size:11px; }
.quote-panel {
  position:sticky;
  z-index:3;
  bottom:14px;
  display:grid;
  gap:14px;
  margin:24px 0 0;
  padding:16px;
  border:1px solid rgba(244,122,32,.35);
  border-radius:16px;
  background:rgba(18,17,17,.94);
  box-shadow:0 18px 44px rgba(0,0,0,.34);
  backdrop-filter:blur(16px);
}
.quote-panel p { margin:0; }
.quote-panel strong,.quote-panel span { display:block; }
.quote-panel strong { font-size:14px; }
.quote-panel span { margin-top:4px; color:#aaa6a2; font-size:11px; line-height:1.45; }
.quote-panel .button { width:100%; gap:9px; text-align:center; }
.collection-quote { position:static; max-width:560px; margin-top:20px; }
.quote-status {
  position:fixed;
  z-index:250;
  left:50%;
  bottom:22px;
  max-width:min(520px,calc(100% - 28px));
  padding:13px 17px;
  border:1px solid rgba(244,122,32,.45);
  border-radius:13px;
  background:#1b1714;
  color:#f7f2ed;
  box-shadow:0 24px 70px rgba(0,0,0,.48);
  font-size:12px;
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,18px);
  transition:opacity var(--duration-medium) var(--ease-smooth-out),transform var(--duration-medium) var(--ease-smooth-out);
}
.quote-status.is-visible { opacity:1; transform:translate(-50%,0); }
.collection-view { opacity:0; transform:translateY(18px); transition:opacity var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out); }
.collection-view.is-open { opacity:1; transform:translateY(0); }
.collection-view.is-closing { opacity:0; transform:translateY(10px); }

/* Scroll reveals only become hidden after JS marks them as enhanced. */
.motion-reveal { opacity:0; transform:translateY(24px); filter:blur(3px); transition:opacity 600ms var(--ease-smooth-out),transform 600ms var(--ease-smooth-out),filter 600ms var(--ease-smooth-out); }
.motion-reveal.is-revealed { opacity:1; transform:translateY(0); filter:blur(0); }
.motion-card-shell { min-width:0; height:100%; }
.motion-card-shell:has(.collection-card) { grid-column:span 1; }

/* Exact transitions.dev text reveal contract. */
.t-stagger-line {
  display:block;
  opacity:0;
  transform:translateY(var(--stagger-distance));
  filter:blur(var(--stagger-blur));
  transition:
    opacity var(--stagger-dur) var(--stagger-ease),
    transform var(--stagger-dur) var(--stagger-ease),
    filter var(--stagger-dur) var(--stagger-ease);
  will-change:transform,opacity,filter;
}
.t-stagger-line--2 { transition-delay:var(--stagger-stagger); }
.t-stagger-line--3 { transition-delay:calc(var(--stagger-stagger) * 2); }
.t-stagger-line--4 { transition-delay:calc(var(--stagger-stagger) * 3); }
.t-stagger-line--5 { transition-delay:calc(var(--stagger-stagger) * 4); }
.t-stagger.is-shown .t-stagger-line { opacity:1; transform:translateY(0); filter:blur(0); }
.t-stagger.is-hiding .t-stagger-line {
  opacity:0;
  transform:translateY(0);
  filter:blur(0);
  transition:opacity 200ms ease,transform 0s linear,filter 0s linear;
  transition-delay:0s;
}

/* Exact transitions.dev flat-wrapper tilt contract; applied only on fine pointers. */
.t-tilt { touch-action:none; }
.t-tilt-card {
  position:relative;
  overflow:hidden;
  transform:perspective(var(--tilt-perspective)) rotateX(var(--tilt-rx,0deg)) rotateY(var(--tilt-ry,0deg));
  transform-style:preserve-3d;
  transition:transform var(--tilt-return) var(--tilt-return-ease);
  will-change:transform;
}
.t-tilt-card.is-tilting { transition:transform var(--tilt-follow) var(--tilt-follow-ease); }
.t-tilt-glare {
  position:absolute;
  z-index:8;
  inset:0;
  pointer-events:none;
  opacity:0;
  mix-blend-mode:screen;
  background:
    radial-gradient(circle 95px at var(--tilt-gx,50%) var(--tilt-gy,50%),rgba(255,255,255,.48),rgba(255,255,255,.06) 52%,rgba(255,255,255,0) 84%),
    radial-gradient(circle 200px at var(--tilt-gx,50%) var(--tilt-gy,50%),rgba(255,255,255,.22),rgba(255,255,255,.04) 58%,rgba(255,255,255,0) 78%),
    radial-gradient(circle 360px at var(--tilt-gx,50%) var(--tilt-gy,50%),rgba(255,255,255,.1),rgba(255,255,255,0) 88%);
  transition:opacity var(--tilt-glare-fade) var(--tilt-glare-ease);
}
.t-tilt.is-hover .t-tilt-glare { opacity:var(--tilt-glare-opacity); }

/* Exact transitions.dev modal state contract. */
.t-modal {
  transform-origin:center;
  transform:scale(var(--modal-scale));
  opacity:0;
  pointer-events:none;
  transition:transform var(--modal-open-dur) var(--modal-ease),opacity var(--modal-open-dur) var(--modal-ease);
  will-change:transform,opacity;
}
.t-modal.is-open { transform:scale(1); opacity:1; pointer-events:auto; }
.t-modal.is-closing {
  transform:scale(var(--modal-scale-close));
  opacity:0;
  pointer-events:none;
  transition:transform var(--modal-close-dur) var(--modal-ease),opacity var(--modal-close-dur) var(--modal-ease);
}

/* Learn-more response for the lightweight arrow glyphs used here. */
.t-learn>i,.t-learn .card-link>i { display:inline-flex; font-style:normal; transform:translateX(0); transition:transform var(--learn-out) var(--learn-ease); }
.t-learn:hover>i,.t-learn:hover .card-link>i { transform:translateX(var(--learn-shift)); transition-duration:var(--learn-in); }

@media (max-width:1020px) and (min-width:721px) {
  :root { --shell:min(100% - 32px,880px); }
  .store-header { height:118px; grid-template-columns:1fr auto; grid-template-rows:70px 48px; gap:0 14px; padding:0 16px 0; }
  .store-header .search { grid-column:1/-1; grid-row:2; height:42px; margin:0; padding:0; border:0; background:transparent; }
  .store-header .search svg { left:14px; }
  .store-header .search-clear { right:8px; }
  .category-nav { top:118px; }
  body[data-mode="portfolio"] .hero.professional-hero { grid-template-columns:minmax(0,1fr) minmax(300px,.78fr); min-height:490px; }
  .professional-hero .hero-content { padding:44px 40px; }
  .professional-hero .hero-content h1 { font-size:clamp(54px,8vw,76px); }
  .hero-stage { min-height:490px; }
  .hero-object { width:180px; }
  .hero-object-core { width:78px; height:78px; }
  .hero-object-core img { width:50px; height:50px; }
  .intent-strip a { min-height:156px; padding:20px; }
  .intent-strip strong { font-size:18px; }
}

@media (max-width:720px) {
  :root { --shell:calc(100% - 24px); }
  html:has(body[data-mode="portfolio"]) { scroll-padding-top:72px; }
  body:before { background-size:42px 42px; }
  body[data-mode="portfolio"] .store-header {
    height:calc(64px + env(safe-area-inset-top));
    min-height:calc(64px + env(safe-area-inset-top));
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:64px;
    padding:env(safe-area-inset-top) 12px 0;
  }
  .header-quote { min-height:38px; padding:0 12px; font-size:0; }
  .header-quote:before { content:"Orçar"; font-size:11px; }
  .header-quote i { font-size:12px; }
  body[data-mode="portfolio"] .hero.professional-hero {
    display:block!important;
    min-height:560px;
    margin-top:12px;
    border-radius:22px;
  }
  .professional-hero .hero-content { min-height:560px; justify-content:flex-start; padding:38px 24px 220px; }
  .professional-hero .hero-content h1 { max-width:100%; margin-bottom:17px; font-size:clamp(52px,17vw,72px); }
  .professional-hero .hero-content>p:not(.eyebrow) { max-width:34ch; margin-bottom:22px; font-size:14px; }
  .professional-hero .hero-actions { width:100%; }
  .professional-hero .hero-actions .button { flex:1 1 145px; min-height:46px; padding-inline:12px; font-size:11px; }
  .professional-hero ul { gap:12px; margin-top:18px; font-size:10px; }
  .hero-stage { position:absolute; z-index:1; left:0; right:0; bottom:-40px; min-height:285px; opacity:.86; }
  .hero-stage:before { inset:4% 16%; }
  .hero-object { width:136px; }
  .hero-object-core { width:62px; height:62px; }
  .hero-object-core img { width:39px; height:39px; }
  .hero-data { font-size:8px; }
  .professional-hero .motion-toggle { width:44px; height:44px; bottom:12px; }
  .intent-strip { grid-template-columns:1fr; margin:10px auto 38px; }
  .intent-strip a { min-height:112px; padding:19px; border-right:0; border-bottom:1px solid var(--line); }
  .intent-strip a:last-child { border-bottom:0; }
  .intent-strip strong { font-size:18px; }
  body[data-mode="portfolio"] .catalog-shell { margin:0 auto 52px; }
  body[data-mode="portfolio"] .catalog-heading { display:flex; }
  .catalog-heading h2 { font-size:30px; }
  .portfolio-disclosure p { font-size:11px; }
  .motion-card-shell:has(.collection-card) { grid-column:1; }
  .custom-order { min-height:0; padding:30px 24px; }
  .custom-order h2 { font-size:36px; }
  .custom-order p:not(.eyebrow) { font-size:13px; }
  .brief-checklist { grid-template-columns:1fr; }
  .trust-row { grid-template-columns:1fr; }
  .trust-row article { min-height:0; }
  footer { gap:20px; }
  footer nav { flex-wrap:wrap; }
  .product-dialog { width:100%; height:100dvh; max-height:100dvh; overflow-y:auto; scrollbar-gutter:auto; }
  .detail-layout { min-height:100%; }
  .gallery { position:relative; min-height:0; }
  .detail-copy { padding-bottom:max(32px,env(safe-area-inset-bottom)); }
  .detail-facts { grid-template-columns:1fr; }
  .quote-panel { bottom:max(10px,env(safe-area-inset-bottom)); }
  .collection-view { transform:translateY(10px); }
}

@media (prefers-reduced-motion:reduce) {
  .hero-scan,.hero-orbit,.hero-object,.hero-object-shell { animation:none!important; }
  .motion-reveal { opacity:1; transform:none; filter:none; transition:none!important; }
  .t-stagger-line { opacity:1; transform:none; filter:none; transition:none!important; }
  .t-tilt-card { transform:none!important; transition:none!important; }
  .t-modal { transition:none!important; }
  .t-learn>i,.t-learn .card-link>i { transition:none!important; }
  .collection-view { transition:none!important; }
}

/* The cinematic marketing system belongs to the landing surface only. */
body[data-mode="portfolio"][data-catalog-step]:not([data-catalog-step="categories"]) .home-only {
  display:none!important;
}

/* Keep in-page conversion anchors clear of the sticky header/navigation. */
body[data-mode="portfolio"] #catalogo,
body[data-mode="portfolio"] #sobre {
  scroll-margin-top:0;
}
@media (max-width:1020px) and (min-width:721px) {
  html:has(body[data-mode="portfolio"]) { scroll-padding-top:183px; }
}
