/* Jardín digital · scoped to the two commercial homepages. */
@font-face{font-family:TWC Editorial;src:url('fonts/cormorant-normal-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:TWC Editorial;src:url('fonts/cormorant-italic-500.woff2') format('woff2');font-weight:500;font-style:italic;font-display:swap}
.atelier-site{color-scheme:light;--bg:#d4dbc8;--surface:#e0e5d5;--surface-2:#c7d1ba;--ink:#183b36;--muted:#5c6c63;--border:#d3d6c9;--border-strong:#b4bcae;--accent:#215b4d;--accent-text:#215b4d;--accent-soft:#215b4d0d;--accent-line:#215b4d45;--ok:#216747;--inv-bg:#122f2c;--inv-fg:#f4efdf;--inv-muted:#b9c7bb;--inv-line:#38534b;--inv-ok:#b9dfbd;--spot:transparent;background:var(--bg);color:var(--ink)}
.atelier-site .section-pad{padding-left:clamp(22px,5vw,88px);padding-right:clamp(22px,5vw,88px)}
.atelier-site .nav,.atelier-site .nav:not(.scrolled){--ink:#f5f0e3;--muted:#c6d0c3;--accent-text:#e4bb90;background:#102e2b;border-bottom:1px solid #ffffff15;color:var(--ink)}
.atelier-site .nav{padding-top:18px;padding-bottom:18px}
.atelier-site .nav-links{gap:24px}
.atelier-site .nav-links a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}
.atelier-site .nav-links a[aria-current]::after{display:none}
.atelier-site .nav-logo{font-size:17px;letter-spacing:-.04em}
.atelier-site .nav-logo img{filter:grayscale(1) sepia(.5)}
.atelier-site .nav .btn{background:#e5c5a0;color:#153a33;border:1px solid #e5c5a0;font-size:12px;padding:13px 20px}
.atelier-site .hero{position:relative;overflow:hidden;isolation:isolate;background:#102e2b;color:#f5f0e3;padding-top:42px;padding-bottom:0;--ink:#f5f0e3;--muted:#bdc8bb}
.atelier-site .hero-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:0;min-height:640px;position:relative;align-items:center}
.atelier-site .hero-copy{max-width:660px;gap:25px;padding-bottom:40px;position:relative;z-index:2}
.atelier-site .hero-eyebrow{font-size:10px;letter-spacing:.17em;color:#d5c3a5;text-transform:uppercase;line-height:1.7}
.atelier-site .hero-title{font:500 clamp(66px,6.7vw,98px)/.88 'TWC Editorial',Georgia,serif;letter-spacing:-.045em;color:#f5f0e3;max-width:none;text-wrap:initial;margin:0}
.atelier-site .hero-title em{font-weight:500;color:#dfb790}
.atelier-site .hero-sub{color:#bac9bb;font-size:15px;line-height:1.75;max-width:43ch;margin-top:2px}
.atelier-site .hero-cta{gap:26px;margin-top:5px}
.atelier-site .hero .btn-pill-dark{background:#e5c5a0;color:#163c34;padding:17px 25px;border:1px solid #e5c5a0;border-radius:3px;font-size:13px}
.atelier-site .hero .btn-pill-dark:hover{background:#f5dfbf;color:#163c34}
.atelier-site .hero .text-link{font-size:12px;color:#eee8d9;border-color:#879b87;padding:12px 0;gap:14px}
.garden-scene{position:relative;min-width:0;aspect-ratio:1/1.12;display:grid;place-items:center;align-self:center;margin:0 -70px 0 -34px}
.garden-sculpture{width:118%;max-width:none;height:auto;z-index:1;transform:rotate(-8deg);filter:drop-shadow(0 30px 22px #051a1b88);pointer-events:none}
.garden-orbit{position:absolute;width:80%;height:88%;border:1px solid #d0bd9340;border-radius:50% 50% 2px 2px;top:6%;left:10%;transform:rotate(12deg)}
.garden-orbit::after{content:'';position:absolute;inset:14px;border:1px solid #d0bd9312;border-radius:inherit}
.garden-coordinate{position:absolute;right:10px;top:53%;font:10px var(--mono);letter-spacing:.08em;color:#b2bcaa;writing-mode:vertical-rl}
.garden-seal{position:absolute;bottom:13%;left:15%;font:500 28px 'TWC Editorial',Georgia,serif;color:#e0bb91;border-top:1px solid #e0bb9155;padding-top:12px;letter-spacing:.12em}
.garden-seal span{display:block;font:8px var(--font);letter-spacing:.2em;text-transform:uppercase;padding-top:5px}
.hero-colophon{position:relative;max-width:1240px;margin:auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d9dfc92b;padding:24px 0;color:#adbcad;font-size:10px;letter-spacing:.03em}
.hero-colophon a{color:#e6d1b4;text-decoration:none;padding:5px 0}
.atelier-site .section-title{font:500 clamp(38px,4.4vw,64px)/.99 'TWC Editorial',Georgia,serif;letter-spacing:-.025em;max-width:850px}
.atelier-site .section-title em{font-weight:500;color:#6f795c}
.atelier-site .eyebrow{font-size:10px;letter-spacing:.12em}
.service-directory{padding-top:100px;padding-bottom:60px}
.directory-inner{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1.4fr;gap:90px}
.directory-heading p{color:var(--muted);font-size:14px;max-width:28ch;line-height:1.7}
.directory-rows a{display:grid;grid-template-columns:26px 1fr 22px;gap:18px;padding:28px 0;border-bottom:1px solid var(--border);color:var(--ink);text-decoration:none}
.directory-rows a:first-child{border-top:1px solid var(--border)}
.directory-rows a>span:last-child{font-size:24px;transition:transform .25s}
.directory-rows a:hover>span:last-child{transform:translate(3px,-3px)}
.directory-number{font:10px var(--mono);color:#7a826e;padding-top:4px}
.directory-rows h3{font-size:20px;font-weight:500;letter-spacing:-.04em;margin:0 0 9px}
.directory-rows p{font-size:13px;line-height:1.6;color:var(--muted);margin:0;max-width:43ch}
.care-wrap{padding-bottom:70px}.care-details{max-width:1240px;margin:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.care-details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:22px 0;font-size:14px;list-style:none}
.care-details summary::-webkit-details-marker,.software-disclosure summary::-webkit-details-marker{display:none}
.disclosure-icon{font-size:24px;font-weight:300;line-height:1;transition:transform .25s}
.care-details[open]>summary .disclosure-icon,.software-disclosure[open]>summary .disclosure-icon{transform:rotate(45deg)}
.care-content>.section-pad{padding:44px 0}.care-content .section-title{font-size:38px}.care-content .split .section-title{position:static}
.atelier-site .software{background:#e8e9df;padding-top:85px;padding-bottom:85px;border-top:1px solid var(--border)}
.atelier-site .software-heading{max-width:none;display:grid;grid-template-columns:1.1fr 1fr;gap:16px 80px;align-items:start;margin-bottom:45px}
.atelier-site .software-heading .eyebrow{grid-column:1/-1;margin:0}
.atelier-site .software-heading .section-title{margin:0}
.atelier-site .software-intro{font-size:14px;line-height:1.8;margin:0;padding-top:5px}
.atelier-site .software-grid{display:block;border-top:1px solid #adb8a6}
.software-disclosure{border-bottom:1px solid #adb8a6}
.software-disclosure>summary{display:grid;grid-template-columns:150px 1fr auto 20px;gap:22px;align-items:center;padding:26px 0;cursor:pointer;list-style:none}
.software-disclosure h3{font-size:22px;font-weight:500;letter-spacing:-.04em;margin:0}
.software-summary-price{font-size:12px;color:#315a49;white-space:nowrap}
.software-disclosure-body{max-width:800px;margin:0 0 28px 172px;display:grid;gap:18px;grid-template-columns:1fr 1fr;font-size:14px;line-height:1.7}
.software-disclosure-body>p{margin:0}.software-disclosure-body .plan-features{margin:0;font-size:13px}.software-disclosure-body .btn{align-self:end;justify-self:start}
.atelier-site .software-custom{margin-top:45px;background:transparent;border:0;border-top:1px solid var(--border);border-radius:0;padding:35px 0 0;gap:45px}
.atelier-site .software-custom h3{font:500 34px/1.1 'TWC Editorial',Georgia,serif}
.atelier-site .software-custom p{font-size:13px}
.atelier-site .cases{padding-top:85px;padding-bottom:75px}
.atelier-site .cases-note{max-width:65ch;font-size:14px;line-height:1.7}
.atelier-site .cases-grid{gap:26px}
.atelier-site .case-card{background:transparent;border:0;border-radius:0;box-shadow:none}
.atelier-site .case-card::before,.atelier-site .tile::before{display:none}
.atelier-site .case-image{border-radius:3px;overflow:hidden;border:1px solid var(--border)}
.atelier-site .case-body{padding:17px 0}.atelier-site .case-name{font-weight:500;font-size:18px}
.atelier-site .case-sector{font-size:10px;letter-spacing:.1em}
.atelier-site #arte{background:#173b34;--ink:#f1eddf;--muted:#bcc9b9;--border:#446052;--accent-text:#e5c5a0;color:var(--ink)}
.atelier-site #arte .section-title{color:var(--ink)}
.atelier-site .tile,.atelier-site .plan,.atelier-site .spec-col{border-radius:5px;box-shadow:none}
.atelier-site .btn{border-radius:3px}
.atelier-site .plan.featured{border-color:#436a54}
.atelier-site .cta-final{background:#193e36;background-image:none;position:relative;overflow:hidden}
.atelier-site .cta-final-inner h2{font:500 clamp(46px,5.5vw,76px)/1 'TWC Editorial',Georgia,serif;max-width:750px;color:#f2eddf}
.atelier-site .cta-final::after{content:'↗';position:absolute;right:8%;top:10%;font:200 230px/1 var(--font);color:#c0ba8d25;pointer-events:none}
.atelier-site :is(a,button,summary):focus-visible{outline:3px solid #af754e;outline-offset:5px}
@media(prefers-reduced-motion:no-preference){.garden-scene{animation:garden-arrive 1.1s ease-out both}@keyframes garden-arrive{from{opacity:0;transform:translateY(20px) rotate(4deg)}to{opacity:1;transform:none}}}
@media(min-width:1101px){.atelier-site #casos .cases-grid>.case-card:nth-child(2){margin-top:55px}}
@media(max-width:1100px){.atelier-site .nav{padding-top:8px;padding-bottom:6px}.atelier-site .hero-inner{grid-template-columns:1.1fr 1fr;min-height:590px;max-width:1240px}.atelier-site .hero-title{font-size:74px}.garden-scene{margin:0 -25px 0 -40px}.directory-inner{gap:45px}.software-disclosure>summary{grid-template-columns:105px 1fr auto 20px}.software-disclosure-body{margin-left:127px}.atelier-site .hero-cta{gap:15px}}
@media(max-width:760px){.atelier-site .hero{padding-top:35px}.atelier-site .hero-inner{grid-template-columns:1fr;gap:0;min-height:0}.atelier-site .hero-copy{gap:22px;padding:0;max-width:100%}.atelier-site .hero-title{font-size:clamp(62px,12vw,86px);line-height:.9}.atelier-site .hero-title br:nth-of-type(2){display:none}.atelier-site .hero-title em::after{content:' ';white-space:pre}.atelier-site .hero-sub{font-size:14px;max-width:42ch}.garden-scene{width:100%;max-width:450px;aspect-ratio:1/.85;margin:-12px auto -12px}.garden-sculpture{width:105%;margin-top:-18px}.garden-orbit{width:66%;height:88%;left:17%;top:4%}.garden-coordinate{right:0;top:34%;font-size:8px}.garden-seal{left:10%;bottom:12%;font-size:22px}.hero-colophon{padding:18px 0;flex-wrap:wrap;gap:12px;font-size:9px}.hero-colophon>span:nth-child(2){display:none}.service-directory{padding-top:60px;padding-bottom:30px}.directory-inner{grid-template-columns:1fr;gap:25px}.directory-heading p{max-width:40ch}.directory-heading .section-title{margin-bottom:20px}.directory-rows a{padding:23px 0;gap:12px;grid-template-columns:22px 1fr 20px}.directory-rows h3{font-size:19px}.care-wrap{padding-bottom:45px}.care-details>summary{font-size:13px}.atelier-site .software{padding-top:55px;padding-bottom:55px}.atelier-site .software-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.software-disclosure>summary{grid-template-columns:1fr auto;gap:10px;padding:23px 0}.software-disclosure .software-index{grid-column:1;grid-row:1;font-size:9px}.software-disclosure h3{grid-column:1;grid-row:2;font-size:22px}.software-summary-price{grid-column:1;grid-row:3}.software-disclosure .disclosure-icon{grid-column:2;grid-row:1/4}.software-disclosure-body{margin:0 0 28px;grid-template-columns:1fr}.atelier-site .software-custom{gap:25px}.atelier-site .cases{padding-top:55px;padding-bottom:50px}.atelier-site .cases-grid{gap:22px}.atelier-site .section-title{font-size:44px}.atelier-site .cta-final::after{font-size:120px;top:auto;bottom:4%;right:5%}}
@media(max-width:380px){.atelier-site .nav .btn{font-size:10px;padding:12px 10px}.atelier-site .nav-logo{font-size:14px;gap:5px}.atelier-site .nav .section-pad{padding-left:18px;padding-right:18px}.atelier-site .hero-title{font-size:58px}.atelier-site .hero-cta{gap:12px}.atelier-site .hero .btn-pill-dark{font-size:12px;padding:15px 18px}.atelier-site .hero .text-link{font-size:11px}.atelier-site .hero-eyebrow{font-size:9px;letter-spacing:.1em}.atelier-site .section-title{font-size:40px}}
@media(prefers-reduced-motion:reduce){.atelier-site *, .atelier-site *::before,.atelier-site *::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.garden-sculpture{transform:rotate(-8deg)}}
/* Keep the sculpture within the first viewport and maintain readable contrast. */
.atelier-site .hero-title em,.atelier-site .section-title em{font-style:italic}
.atelier-site .software-custom{--inv-fg:#183b36;--inv-muted:#5c6c63;--inv-line:#b4bcae;box-shadow:none;color:var(--inv-fg)}
.atelier-site .software{scroll-margin-top:100px}
@media(min-width:761px){.atelier-site .hero-inner{min-height:650px}.garden-scene{height:600px;aspect-ratio:auto;margin:0 -24px 0 -20px;align-self:center}.garden-sculpture{position:absolute;width:112%;height:112%;object-fit:contain}.garden-coordinate{right:0}.garden-seal{bottom:7%;left:12%}}
@media(min-width:761px) and (max-width:1100px){.atelier-site .hero-inner{min-height:600px}.garden-scene{height:480px}.atelier-site .hero-title{font-size:66px}}
@media(max-width:760px){.garden-scene{height:330px;aspect-ratio:auto}.garden-sculpture{position:absolute;width:105%;height:120%;object-fit:contain}.atelier-site .software{scroll-margin-top:120px}}
@media(max-width:760px){.atelier-site .hero-title br:nth-of-type(2){display:initial}.atelier-site .hero-title em::after{content:none}.garden-scene{margin-top:5px}}

/* Adaptive sage / forest palette. The OS preference updates live, without JS. */
.atelier-site {
  --hero-bg:#becbb5; --hero-ink:#193d34; --hero-muted:#365240;
  --hero-accent:#704129; --hero-line:#7f96766b;
  --hero-button:#215b4d; --hero-button-ink:#e6ecd9;
  --border:#aaba9d; --border-strong:#869d79; --muted:#405944;
  --display-accent:#526548; --software-bg:#c7d1ba;
  --inv-bg:#18392e; --inv-fg:#e0e6d3; --inv-muted:#bacbb6;
}
@media (prefers-color-scheme:dark) {
  .atelier-site {
    color-scheme:dark;
    --bg:#10251f; --surface:#1b372d; --surface-2:#152e25;
    --ink:#dce5d3; --muted:#b0c4b2; --border:#355345; --border-strong:#5a7964;
    --accent:#30684d; --accent-text:#cad8ad; --accent-soft:#a0bf9220;
    --accent-line:#809f6e; --ok:#a7d4a7; --danger:#f1ad96;
    --hero-bg:#0c221e; --hero-ink:#dce5d3; --hero-muted:#b1c6b3;
    --hero-accent:#dfb790; --hero-line:#9bb08a45;
    --hero-button:#d8ba8e; --hero-button-ink:#173d30;
    --display-accent:#b3c89d; --software-bg:#173027;
    --inv-bg:#091e18; --inv-fg:#dce5d3; --inv-muted:#b0c4b2;
    --inv-line:#355345; --inv-ok:#a7d4a7;
  }
}
html:has(.atelier-site){color-scheme:light dark;scroll-padding-top:0}
.atelier-site .nav,.atelier-site .nav:not(.scrolled),.atelier-site .hero {
  --ink:var(--hero-ink);--muted:var(--hero-muted);--accent-text:var(--hero-accent);
  background:var(--hero-bg);color:var(--hero-ink);border-color:var(--hero-line);
}
.atelier-site .hero-title{color:var(--hero-ink)}
.atelier-site .hero-title em,.atelier-site .hero-eyebrow{color:var(--hero-accent)}
.atelier-site .hero-sub,.atelier-site .garden-coordinate,.atelier-site .hero-colophon{color:var(--hero-muted)}
.atelier-site .hero-colophon,.atelier-site .garden-orbit,.atelier-site .garden-seal{border-color:var(--hero-line)}
.atelier-site .garden-orbit::after{border-color:var(--hero-line);opacity:.3}
.atelier-site .garden-seal,.atelier-site .hero-colophon a{color:var(--hero-accent)}
.atelier-site .hero .text-link{color:var(--hero-ink);border-color:var(--hero-line)}
.atelier-site .hero .btn-pill-dark,.atelier-site .nav .btn{background:var(--hero-button);color:var(--hero-button-ink);border-color:var(--hero-button)}
.atelier-site .hero .btn-pill-dark:hover,.atelier-site .nav .btn:hover{background:var(--hero-button);color:var(--hero-button-ink);filter:brightness(1.08)}
.atelier-site .section-title em{color:var(--display-accent)}
.atelier-site .directory-number{color:var(--muted)}
.atelier-site .software{background:var(--software-bg)}
.atelier-site .software-grid,.atelier-site .software-disclosure{border-color:var(--border-strong)}
.atelier-site .software-summary-price{color:var(--accent-text)}
.atelier-site .software-custom{--inv-fg:var(--ink);--inv-muted:var(--muted);--inv-line:var(--border);color:var(--ink)}
.atelier-site .btn-pill-light{background:#d8ba8e;color:#173d30}
.atelier-site .btn-accent{color:#edf3e2}
.atelier-site .btn-accent:hover{box-shadow:0 8px 22px -12px #1d493d88}
.atelier-site .cta-final-inner h2{color:#dce5d3}
.atelier-site .cta-final-inner p,.atelier-site .btn-ghost-light{color:#c9d9be}
.atelier-site .btn-ghost-light{border-color:#94ac8b}
.atelier-site #arte{--ink:#dce5d3;--muted:#b0c4b2;--surface-2:#1c392f}
.atelier-site [id]{scroll-margin-top:100px}
.garden-sculpture[hidden]{display:none}
.garden-slime{pointer-events:auto;cursor:grab;touch-action:pan-y}
.garden-slime:active{cursor:grabbing}
@media(max-width:1100px){.atelier-site [id]{scroll-margin-top:120px}}
@media(forced-colors:active){.garden-slime{display:none}.garden-sculpture:not(canvas)[hidden]{display:block}}

/* ===== Relieve y luz al pasar el cursor (23/10/2026) ===== */
/* Escultura: inclinación con muelle y perspectiva. Las variables las escribe js/atelier.js; en reposo valen 0. */
.atelier-site .garden-scene{perspective:1100px}
.atelier-site .garden-sculpture{filter:none}   /* la sombra va integrada en la textura: un filter sobre un lienzo animado es caro en móvil */
.atelier-site .garden-sculpture{transform:rotate(-8deg) translate3d(var(--gx,0px),var(--gy,0px),0) rotateX(var(--grx,0deg)) rotateY(var(--gry,0deg)) scale(var(--gs,1))}
/* Botones: se levantan al pasar el cursor o al enfocarlos con teclado, y se hunden al pulsar. Brillo suave que sigue al cursor. */
.atelier-site .btn:not(.sticky-cta){position:relative;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),filter .2s var(--ease)}
.atelier-site .btn:not(.sticky-cta)::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(110px circle at var(--sx,50%) var(--sy,50%),#ffffff4d,transparent 70%);opacity:0;transition:opacity .25s var(--ease);pointer-events:none}
.atelier-site .btn:not(.sticky-cta):focus-visible{transform:translateY(-3px)}
@media(hover:hover) and (pointer:fine){
  .atelier-site .btn:not(.sticky-cta):hover{transform:translateY(-3px);box-shadow:0 16px 26px -16px #0c261f99}
  .atelier-site .btn:not(.sticky-cta):hover::after{opacity:1}
  .atelier-site .btn:not(.sticky-cta):active{transform:translateY(-1px) scale(.985);box-shadow:0 6px 12px -8px #0c261f88;transition-duration:.08s}
}
/* Filas seleccionables: luz local bajo el cursor y el título se desplaza un poco */
.atelier-site .directory-rows a,.atelier-site .software-disclosure>summary,.atelier-site .faq summary,.atelier-site .care-details>summary{position:relative;isolation:isolate}
.atelier-site .directory-rows a::before,.atelier-site .software-disclosure>summary::before,.atelier-site .faq summary::before,.atelier-site .care-details>summary::before{content:"";position:absolute;inset:0 -16px;z-index:-1;border-radius:6px;background:radial-gradient(70px circle at var(--sx,50%) var(--sy,50%),#fffcecb3,transparent);opacity:0;transition:opacity .3s var(--ease);pointer-events:none}
.atelier-site .directory-rows h3,.atelier-site .software-disclosure h3{transition:transform .3s var(--ease)}
@media(hover:hover) and (pointer:fine){
  .atelier-site .directory-rows a:hover::before,.atelier-site .software-disclosure>summary:hover::before,.atelier-site .faq summary:hover::before,.atelier-site .care-details>summary:hover::before{opacity:1}
  .atelier-site .directory-rows a:hover h3,.atelier-site .software-disclosure>summary:hover h3{transform:translateX(8px)}
  .atelier-site .spec-col:hover,.atelier-site .case-card:hover{transform:translateY(-5px);box-shadow:0 22px 34px -24px #0c261f88}
}
.atelier-site .spec-col,.atelier-site .case-card{transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .2s var(--ease)}
/* Luz del cursor (js/luz.js): núcleo pequeño + halo con retraso, física de muelle; solo transform y opacity */
.cursor-light{position:fixed;left:0;top:0;width:0;height:0;z-index:1100;pointer-events:none;opacity:0;transition:opacity .35s var(--ease);--cl:229 197 160}
.cursor-light:not(.on-dark){--cl:255 246 214}
.cursor-light.on{opacity:1}
.cursor-light.on.idle{opacity:.4}
.cl-core,.cl-halo,.cl-ring{position:absolute;left:0;top:0;border-radius:50%;pointer-events:none;will-change:transform}
.cl-core{width:34px;height:34px;margin:-17px 0 0 -17px;background:radial-gradient(circle,rgb(var(--cl)/.82) 0%,rgb(var(--cl)/.34) 45%,rgb(var(--cl)/0) 70%)}
.cl-halo{width:150px;height:150px;margin:-75px 0 0 -75px;background:radial-gradient(circle,rgb(var(--cl)/.2) 0%,rgb(var(--cl)/.07) 45%,rgb(var(--cl)/0) 70%)}
.cl-ring{width:60px;height:60px;margin:-30px 0 0 -30px;border:1.5px solid rgb(var(--cl)/.8)}
@media(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-light{display:none}.atelier-site .btn:not(.sticky-cta)::after{display:none}}
/* Tema oscuro: reflejos más discretos y sombras que se vean sobre fondo oscuro */
@media(prefers-color-scheme:dark){
  .atelier-site .directory-rows a::before,.atelier-site .software-disclosure>summary::before,.atelier-site .faq summary::before,.atelier-site .care-details>summary::before{background:radial-gradient(70px circle at var(--sx,50%) var(--sy,50%),#e5c5a04d,transparent)}
  .atelier-site .btn:not(.sticky-cta)::after{background:radial-gradient(70px circle at var(--sx,50%) var(--sy,50%),#ffffff38,transparent 70%)}
  .atelier-site .btn:not(.sticky-cta):hover{box-shadow:0 16px 26px -16px #000000b3}
  .atelier-site .btn:not(.sticky-cta):active{box-shadow:0 6px 12px -8px #000000a6}
  .atelier-site .spec-col:hover,.atelier-site .case-card:hover{box-shadow:0 22px 34px -24px #000000b3}
}

/* Botón de pausa del movimiento automático (solo táctil, WCAG 2.2.2) */
.garden-pause{position:absolute;right:6px;bottom:6px;z-index:3;width:44px;height:44px;border-radius:50%;border:1px solid var(--hero-line,#ffffff40);background:#102e2bb3;color:var(--hero-accent,#e5c5a0);cursor:pointer;display:grid;place-items:center;padding:0;touch-action:manipulation}
.garden-pause::before{content:"";width:5px;height:14px;border-left:4px solid currentColor;border-right:4px solid currentColor;box-sizing:content-box}
.garden-pause[aria-pressed="true"]::before{width:0;height:0;border:0;border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent currentColor;margin-left:3px}
@media(prefers-color-scheme:light){.garden-pause{background:#d4dbc8cc;color:#215b4d;border-color:#215b4d55}}

/* Móvil: la firma «TWC» queda tapada por la figura, y el menú se corta a media palabra sin pista de que se desliza */
@media(max-width:760px){
  .garden-seal{display:none}
  .atelier-site .nav-links{-webkit-mask-image:linear-gradient(to right,#000 88%,transparent);mask-image:linear-gradient(to right,#000 88%,transparent)}
}

/* Refinement: one quiet focal object and visible keyboard focus. */
.atelier-site .garden-sculpture { transition: transform .45s cubic-bezier(.2,.72,.25,1); }
.atelier-site .cursor-light { z-index:900; }
.atelier-site :is(a,button,summary,input,select,textarea):focus-visible { outline:3px solid #dfb790; outline-offset:4px; }
@media(prefers-color-scheme:light){.atelier-site :is(a,button,summary,input,select,textarea):focus-visible { outline-color:#805032; }}
@media(max-width:760px){.atelier-site .nav-links:focus-within { mask-image:none; -webkit-mask-image:none; }}
@media(prefers-reduced-motion:reduce){.atelier-site .garden-sculpture { transition:none; }}

/* The sculpture provides its own pointer lighting; the decorative cursor yields to it. */
.cursor-light.on.on-sculpture,.cursor-light.on.idle.on-sculpture{opacity:0}

.atelier-site .case-explainer,.atelier-site .case-action{display:block;margin-top:10px;font-size:12px;line-height:1.55;color:var(--muted)}
.atelier-site .case-action{margin-top:16px;color:var(--accent-text);font-weight:600}
.form-honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.form-status{font-size:13px;line-height:1.6;margin:10px 0 0;color:var(--danger,#9a362c)}
.form-status a{color:inherit;text-decoration:underline;font-weight:600}
.service-teaser{max-width:1240px;margin:0 auto 35px;display:grid;grid-template-columns:1.1fr .9fr;gap:12px 50px;align-items:end}
.service-teaser .eyebrow{grid-column:1/-1}
.service-teaser .section-title{margin:0}
.service-teaser p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}
.service-teaser .text-link{grid-column:1/-1;justify-self:start;margin-top:10px}
.service-fold{max-width:1240px;margin:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.service-fold>summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:21px 0;cursor:pointer;font-size:13px;font-weight:600}
.service-fold>summary::-webkit-details-marker{display:none}
.service-fold>summary span{font-size:22px;line-height:1;font-weight:300}
.service-fold[open]>summary span{transform:rotate(45deg)}
.service-fold>.software-inner,.service-fold>.pricing-inner{padding-top:45px}
.atelier-site .service-fold .software-heading,.atelier-site .service-fold .pricing-inner>h2{display:none}
@media(max-width:760px){.service-teaser{grid-template-columns:1fr}.service-teaser .eyebrow,.service-teaser .text-link{grid-column:auto}}

/* Atmosfera cromatica del hero: luz mineral, jade y cobre. */
.atelier-site .hero {
  background-color: var(--hero-bg);
  background-image:
    radial-gradient(ellipse 34% 58% at 78% 46%, #c88d5b2b, transparent 72%),
    radial-gradient(ellipse 34% 56% at 68% 78%, #5c8b7330, transparent 74%),
    linear-gradient(118deg, #becbb5 0%, #c7d1bd 46%, #b2c3ae 100%);
}
.atelier-site .garden-scene::before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 78%;
  height: 62%;
  left: 11%;
  top: 20%;
  border-radius: 50%;
  background: radial-gradient(ellipse at var(--light-x, 50%) var(--light-y, 50%), #d9a7754d 0%, #6a9b7966 37%, transparent 73%);
  filter: blur(22px);
  opacity: .72;
  transform: scale(.94);
  transition: transform 1.5s cubic-bezier(.2,.72,.25,1), opacity 1.5s cubic-bezier(.2,.72,.25,1);
  pointer-events: none;
}
.atelier-site .garden-orbit {
  transition: transform 1.7s cubic-bezier(.2,.72,.25,1), opacity 1.7s ease;
}
.atelier-site .garden-orbit::after {
  transition: transform 2s cubic-bezier(.2,.72,.25,1), opacity 2s ease;
}
.atelier-site .hero-title em {
  text-shadow: 0 0 34px #b8744a1a;
}
.atelier-site .hero .btn-pill-dark {
  box-shadow: 0 12px 26px -19px #123d3280;
}
@media (prefers-color-scheme: dark) {
  .atelier-site .hero {
    background-image:
      radial-gradient(ellipse 34% 58% at 78% 46%, #dfa66d26, transparent 72%),
      radial-gradient(ellipse 34% 56% at 68% 78%, #4d987d29, transparent 74%),
      linear-gradient(118deg, #0a201b 0%, #102a23 47%, #10251f 100%);
  }
  .atelier-site .garden-scene::before {
    background: radial-gradient(ellipse at var(--light-x, 50%) var(--light-y, 50%), #dfad7747 0%, #52a1844a 39%, transparent 74%);
    opacity: .9;
  }
  .atelier-site .hero-title em { text-shadow: 0 0 38px #e3ad7921; }
  .atelier-site .hero .btn-pill-dark { box-shadow: 0 14px 28px -18px #000c; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .atelier-site .garden-scene:hover::before { transform: scale(1.09); opacity: .92; }
  .atelier-site .garden-scene:hover .garden-orbit { transform: rotate(18deg) scale(1.025); opacity: .95; }
  .atelier-site .garden-scene:hover .garden-orbit::after { transform: rotate(-8deg) scale(1.015); opacity: .52; }
}
@media (max-width: 760px) {
  .atelier-site .hero { background-position: center, center, center; }
  .atelier-site .garden-scene::before { width: 86%; height: 55%; left: 7%; top: 22%; filter: blur(16px); }
}
@media (prefers-reduced-motion: reduce) {
  .atelier-site .garden-scene::before,
  .atelier-site .garden-orbit,
  .atelier-site .garden-orbit::after { transition: none; }
}


/* Navegación compacta y preguntas agrupadas, con los colores existentes. */
.nav-toggle { display:none; }
.atelier-site .faq details[open] > summary::after { transform:rotate(45deg); }
.atelier-site .faq details:not([open]) > summary::after { transform:none; }
.atelier-site .faq-more { max-width:820px; }
.atelier-site .faq-more > summary { color:var(--ink); }
.faq-more-open, .faq-more[open] > summary .faq-more-closed { display:none; }
.faq-more[open] > summary .faq-more-open { display:inline; }
.atelier-site .faq summary:focus-visible, .nav-toggle:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
@media(max-width:1100px) {
  .atelier-site .nav-inner-minimal { grid-template-rows:auto auto; grid-template-areas:"brand action" "toggle toggle"; min-height:0; }
  .atelier-site .nav-toggle:not([hidden]) { grid-area:toggle; display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px; padding:8px 4px; border:0; border-top:1px solid var(--border); background:transparent; color:var(--ink); font:inherit; cursor:pointer; }
  .atelier-site .nav-toggle[aria-expanded="true"] { font-weight:600; }
  .atelier-site .nav-toggle[aria-expanded="true"] span { transform:rotate(45deg); }
  .atelier-site .nav-inner-minimal .nav-links { grid-area:auto; grid-column:1 / -1; flex-wrap:wrap; overflow:visible; white-space:normal; gap:0; mask-image:none; -webkit-mask-image:none; }
  .atelier-site .nav-inner-minimal .nav-links a { width:50%; min-height:44px; padding:10px 4px; }
  .atelier-site .nav-ready .nav-links { display:none; }
  .atelier-site .nav-ready .nav-toggle[aria-expanded="true"] + .nav-links { display:flex; max-height:50vh; overflow-y:auto; }
}

/* Acento cobre mineral: una nota cálida sobre el jade y la salvia. */
.atelier-site {
  --signal:#76563e;
  --signal-soft:#76563e1a;
  --signal-line:#76563e66;
  --signal-ink:#f5f2e8;
  --signal-on-dark:#d7ad84;
  --signal-on-dark-ink:#173d30;
}
@media (prefers-color-scheme:dark) {
  .atelier-site {
    --signal:#dfb790;
    --signal-soft:#dfb79020;
    --signal-line:#dfb79080;
    --signal-ink:#173d30;
    --signal-on-dark:#dfb790;
  }
}
.atelier-site .nav-links a[aria-current="location"] { color:var(--signal-on-dark); }
.atelier-site .nav-links a[aria-current="location"]::after { background:var(--signal-on-dark); }
.atelier-site .hero .text-link:hover { color:var(--signal-on-dark); border-color:var(--signal-on-dark); }
.atelier-site .directory-number,
.atelier-site .software-summary-price,
.atelier-site .case-action,
.atelier-site .service-fold>summary>span { color:var(--signal); }
.atelier-site .directory-rows a:hover>span:last-child,
.atelier-site .software-disclosure>summary:hover h3 { color:var(--signal); }
.atelier-site .spec-col[data-plan-card="estandar"] {
  border-color:var(--signal-line);
  background:linear-gradient(145deg,var(--signal-soft),transparent 72%),var(--surface);
}
.atelier-site .spec-col[data-plan-card="estandar"] .plan-tag {
  background:var(--signal);
  color:var(--signal-ink);
}
.atelier-site .btn-pill-light {
  background:var(--signal-on-dark);
  border-color:var(--signal-on-dark);
  color:var(--signal-on-dark-ink);
}
.atelier-site .btn-pill-light:hover { filter:brightness(1.08); }
.atelier-site :is(a,button,summary,input,select,textarea):focus-visible,
.atelier-site .nav-toggle:focus-visible { outline-color:var(--signal); }
.atelier-site :is(.nav,.hero,.cta-final,#arte) :is(a,button,summary,input,select,textarea):focus-visible,
.atelier-site .nav :is(a,button,summary,input,select,textarea):focus-visible,
.atelier-site .nav-toggle:focus-visible { outline-color:var(--signal-on-dark); }

/* Entrada breve al recorrer la página: movimiento corto, escalonado y desactivable. */
.atelier-site.reveal-ready [data-reveal] {
  opacity:0;
  translate:0 12px;
  transition:opacity .78s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms),
             translate .78s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms);
}
.atelier-site.reveal-ready [data-reveal].is-visible {
  opacity:1;
  translate:0 0;
}
@media(prefers-reduced-motion:reduce) {
  .atelier-site.reveal-ready [data-reveal] {
    opacity:1!important;
    translate:none!important;
    transition:none!important;
  }
}

/* Una sola superficie continua: jade de día, verde petróleo de noche. */
.atelier-site {
  --page-bg:var(--bg);
  --page-surface:var(--surface);
  --page-surface-2:var(--surface-2);
  --page-ink:var(--ink);
  --page-muted:var(--muted);
  --page-border:var(--border);
  --page-accent:var(--accent-text);
  --hero-bg:var(--bg);
  --software-bg:var(--bg);
}
.atelier-site main > section:not(.hero) {
  background:var(--bg);
  border-top-color:transparent;
  border-bottom-color:transparent;
}
.atelier-site main > section#arte {
  --ink:var(--page-ink);
  --muted:var(--page-muted);
  --border:var(--page-border);
  --accent-text:var(--page-accent);
  --surface:var(--page-surface);
  --surface-2:var(--page-surface-2);
  color:var(--page-ink);
  background:var(--bg);
}
.atelier-site .hero {
  --bg:var(--page-bg);
  --surface:var(--page-surface);
  --surface-2:var(--page-surface-2);
  background-color:var(--hero-bg);
  background-image:
    radial-gradient(ellipse 34% 58% at 78% 46%, #c88d5b16, transparent 72%),
    radial-gradient(ellipse 34% 56% at 68% 78%, #5c8b7318, transparent 74%),
    linear-gradient(118deg, var(--hero-bg) 0%, var(--hero-bg) 100%);
}
@media (prefers-color-scheme:dark) {
  .atelier-site .hero {
    background-image:
      radial-gradient(ellipse 34% 58% at 78% 46%, #dfa66d1c, transparent 72%),
      radial-gradient(ellipse 34% 56% at 68% 78%, #4d987d1c, transparent 74%),
      linear-gradient(118deg, var(--hero-bg) 0%, var(--hero-bg) 100%);
  }
}
.atelier-site .cta-final {
  color:var(--ink);
  background:var(--bg);
}
.atelier-site .cta-final-inner h2,
.atelier-site .cta-final-inner p,
.atelier-site .cta-final .btn-ghost-light {
  color:var(--ink);
}
.atelier-site .cta-final .btn-ghost-light { border-color:var(--border-strong); }

/* Aprovecha mejor las pantallas grandes sin alargar demasiado la lectura. */
@media (min-width: 1200px) {
  .atelier-site { --wrap: min(1600px, calc(100vw - 80px)); }
  .atelier-site .hero-colophon,
  .atelier-site .directory-inner,
  .atelier-site .care-details,
  .atelier-site .service-teaser,
  .atelier-site .service-fold { max-width: var(--wrap); }
}

/* Splash de marca a pantalla completa: símbolo dibujado, órbitas suaves y cortinas laterales. */
.site-entry {
  position:fixed; inset:0; z-index:12000; display:none; place-items:center; overflow:hidden; isolation:isolate;
  background:transparent; color:#f5f0e3; opacity:1;
  transition:opacity .48s cubic-bezier(.22,1,.36,1), visibility .48s;
}
html.brand-intro-pending .site-entry,
body.brand-intro-active .site-entry { display:grid; }
html.brand-intro-pending,
html.brand-intro-pending body,
body.brand-intro-active { overflow:hidden!important; }
.entry-curtain {
  position:absolute; top:0; bottom:0; z-index:1; width:50.2%; pointer-events:auto;
  background:radial-gradient(ellipse at 50% 45%,#335e4a 0%,#173b33 42%,#102e2b 78%,#0c2521 100%);
}
.entry-curtain::after {
  content:""; position:absolute; top:0; bottom:0; width:1px; opacity:.68;
  background:linear-gradient(transparent 8%,#d9c49a65 48%,transparent 92%);
}
.entry-curtain-left { left:0; box-shadow:inset -20px 0 34px -28px #000b; }
.entry-curtain-left::after { right:0; }
.entry-curtain-right { right:0; box-shadow:inset 20px 0 34px -28px #000b; }
.entry-curtain-right::after { left:0; }
body.brand-intro-exit .site-entry { opacity:0; visibility:hidden; }
.entry-brand { position:relative; z-index:2; display:grid; justify-items:center; gap:15px; transform:translateY(-8px); }
.entry-emblem { position:relative; width:98px; height:98px; display:grid; place-items:center; }
.entry-orbit { position:absolute; display:block; border:1px solid #d9c49a32; border-radius:50%; }
.entry-orbit-one { --entry-orbit-angle:-28deg; --entry-orbit-y:.75; inset:7px -7px; transform:rotate(-28deg) scaleY(.75); border-left-color:#dfbd896e; border-bottom-color:#dfbd8950; }
.entry-orbit-two { --entry-orbit-angle:33deg; --entry-orbit-y:.72; inset:-7px 14px; transform:rotate(33deg) scaleY(.72); border-right-color:#c6d8c141; border-top-color:#c6d8c126; }
.entry-orbit-one::after,.entry-orbit-two::after {
  content:""; position:absolute; width:5px; height:5px; border-radius:50%; background:#e3c28e;
  box-shadow:0 0 12px #e3c28e95;
}
.entry-orbit-one::after { top:14%; left:22%; }
.entry-orbit-two::after { right:17%; bottom:12%; width:4px; height:4px; background:#c8d6c4; }
.entry-symbol { width:62px; height:62px; overflow:visible; color:#e3c28e; opacity:0; transform:scale(.82); }
.entry-symbol rect { fill:none; stroke:currentColor; stroke-width:1.5; opacity:.76; }
.entry-symbol path { fill:none; stroke:currentColor; stroke-width:7; stroke-linecap:round; stroke-linejoin:round; }
.entry-wordmark { color:#f5f0e3; font:500 clamp(38px,6vw,58px)/.95 'TWC Editorial',Georgia,serif; letter-spacing:-.045em; opacity:0; transform:translateY(12px); }
.entry-caption { color:#c7cdbb; font:600 8px/1.5 'Geist',sans-serif; letter-spacing:.23em; text-transform:uppercase; opacity:0; transform:translateY(8px); }
.entry-caption i { color:#dfbd89; font-style:normal; padding:0 5px; }
.entry-skip {
  position:absolute; z-index:3; right:clamp(20px,5vw,70px); bottom:clamp(18px,4vw,42px); min-height:44px; padding:8px 3px;
  border:0; background:none; color:#ded5c1; font:500 12px/1 'Geist',sans-serif; cursor:pointer;
  opacity:.78; transition:opacity .2s ease,color .2s ease;
}
.entry-skip:hover { opacity:1; color:#fff; }
.entry-skip span { margin-left:8px; }
.entry-skip:focus-visible { outline:2px solid #e3c28e; outline-offset:5px; }
html.brand-intro-pending .entry-symbol,
body.brand-intro-active .entry-symbol { animation:entry-symbol-in .65s cubic-bezier(.2,.8,.2,1) .16s both; }
html.brand-intro-pending .entry-orbit-one,
body.brand-intro-active .entry-orbit-one { animation:entry-orbit-in .75s cubic-bezier(.2,.8,.2,1) .08s both; }
html.brand-intro-pending .entry-orbit-two,
body.brand-intro-active .entry-orbit-two { animation:entry-orbit-in .85s cubic-bezier(.2,.8,.2,1) .18s both; }
html.brand-intro-pending .entry-wordmark,
body.brand-intro-active .entry-wordmark { animation:entry-word-in .78s cubic-bezier(.2,.8,.2,1) .34s both; }
html.brand-intro-pending .entry-caption,
body.brand-intro-active .entry-caption { animation:entry-word-in .7s cubic-bezier(.2,.8,.2,1) .52s both; }
html.brand-intro-pending .entry-curtain-left,
body.brand-intro-active .entry-curtain-left { animation:entry-curtain-left .82s cubic-bezier(.76,0,.24,1) 1.12s forwards; }
html.brand-intro-pending .entry-curtain-right,
body.brand-intro-active .entry-curtain-right { animation:entry-curtain-right .82s cubic-bezier(.76,0,.24,1) 1.12s forwards; }
html.brand-intro-pending .entry-brand,
body.brand-intro-active .entry-brand { animation:entry-brand-away .46s cubic-bezier(.2,.8,.2,1) 1.18s forwards; }
@keyframes entry-symbol-in { to { opacity:1; transform:scale(1); } }
@keyframes entry-orbit-in {
  from { opacity:0; transform:rotate(var(--entry-orbit-angle)) scale(.74,var(--entry-orbit-y)); }
  to { opacity:1; transform:rotate(var(--entry-orbit-angle)) scale(1,var(--entry-orbit-y)); }
}
@keyframes entry-word-in { to { opacity:1; transform:translateY(0); } }
@keyframes entry-curtain-left { to { transform:translateX(-101%); } }
@keyframes entry-curtain-right { to { transform:translateX(101%); } }
@keyframes entry-brand-away { to { opacity:0; transform:translateY(-8px) scale(.97); } }
@media(max-width:600px) {
  .entry-emblem { width:84px; height:84px; }
  .entry-symbol { width:54px; height:54px; }
  .entry-brand { gap:13px; }
  .entry-wordmark { font-size:clamp(38px,10vw,50px); }
  .entry-caption { font-size:7px; letter-spacing:.16em; }
  .entry-skip { right:24px; bottom:17px; }
}
@media(prefers-reduced-motion:reduce) {
  html.brand-intro-pending,
  html.brand-intro-pending body,
  body.brand-intro-active { overflow:visible!important; }
  html.brand-intro-pending .site-entry,
  body.brand-intro-active .site-entry { display:none!important; }
  body.brand-intro-active .entry-symbol,
  body.brand-intro-active .entry-orbit,
  body.brand-intro-active .entry-wordmark,
  body.brand-intro-active .entry-caption,
  body.brand-intro-active .entry-curtain-left,
  body.brand-intro-active .entry-curtain-right,
  body.brand-intro-active .entry-brand { animation:none; }
  body.brand-intro-exit .site-entry { transition:none; }
}

/* Acciones principales del encabezado: diagnóstico y reserva de llamada. */
.atelier-site .nav-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-shrink:0; }
.atelier-site .nav-actions .btn { font-size:11px; padding:12px 14px; }
/* En modo claro la cabecera es clara: el texto y el borde usan los colores oscuros del tema (antes crema sobre salvia, contraste 1,24:1). */
.atelier-site .nav .nav-call-btn { background:transparent; color:var(--hero-ink); border:1px solid var(--hero-muted); }
.atelier-site .nav .nav-call-btn:hover { background:#0000000d; border-color:var(--hero-ink); color:var(--hero-ink); }
@media (prefers-color-scheme:dark) {
  .atelier-site .nav .nav-call-btn { color:#f5f0e3; border-color:#8e9c8e; }
  .atelier-site .nav .nav-call-btn:hover { background:#ffffff12; border-color:#d5c3a5; color:#fff; }
}
@media(max-width:1100px) {
  .atelier-site .nav-inner-minimal > .nav-actions { grid-area:action; justify-self:end; }
}
@media(max-width:600px) {
  .atelier-site .nav-inner-minimal { display:flex; flex-direction:column; align-items:stretch; gap:4px; }
  .atelier-site .nav-inner-minimal .nav-logo { order:1; }
  .atelier-site .nav-inner-minimal > .nav-actions { order:2; justify-content:flex-start; width:100%; }
  .atelier-site .nav-inner-minimal .nav-toggle { order:3; }
  .atelier-site .nav-inner-minimal .nav-links { order:4; }
  .atelier-site .nav-actions .btn { font-size:10px; padding:10px 9px; }
  .atelier-site .nav-actions .btn .arrow { display:none; }
}

/* Turnstile (anti-bots): ocupa sitio solo cuando el widget está activo */
.turnstile-box{margin:6px 0 2px}.turnstile-box:empty{display:none}
