/* APEX — all presentation and motion are local; no external libraries. */
:root{color-scheme:dark;--navy:#041321;--deep:#020d18;--blue:#09273c;--gold:#efbb5b;--gold-light:#ffdf98;--text:#f4f6f9;--muted:#c1cbd6;--line:rgba(222,197,146,.26);--header:92px;--ease:cubic-bezier(.22,1,.36,1);font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 24px)}body{margin:0;background:var(--deep);color:var(--text);font-size:16px;line-height:1.6;overflow-x:clip}body.dialog-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}button{cursor:pointer}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:6px}::selection{background:var(--gold);color:var(--deep)}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.1}h2{font-size:clamp(2rem,3.25vw,3.25rem);letter-spacing:-.045em;font-weight:750}p{color:var(--muted)}svg{display:block}svg.icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sprite{position:absolute;width:0;height:0;overflow:hidden}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.eyebrow{color:var(--gold);font-size:.78rem;line-height:1.45;letter-spacing:.16em;font-weight:700;text-transform:uppercase;margin-bottom:15px}.gold{color:var(--gold)}.button{min-height:52px;padding:14px 26px;border:1px solid transparent;border-radius:32px;font-size:.875rem;line-height:1.25;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:14px;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s,background .3s}.button svg{width:18px;height:18px;stroke-width:1.8}.button:hover{transform:translateY(-3px)}.button-gold{color:#092032;background:linear-gradient(115deg,#ffdf96 0%,#f1c266 56%,#e8aa40 100%);box-shadow:inset 0 1px 0 #ffedbb80,0 6px 24px #00000015}.button-gold:hover{box-shadow:0 8px 32px #ecb95435}.button-outline{color:var(--text);border-color:#e9b557bb;background:#03142255;backdrop-filter:blur(12px)}.button-outline svg{color:var(--gold)}.button-outline:hover{background:#19334d88;border-color:var(--gold-light)}.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;padding:12px 20px;background:var(--gold);color:var(--deep);border-radius:6px}.skip-link:focus{top:12px}.section-heading{text-align:center;max-width:900px;margin:0 auto 44px}.section-heading h2{margin-bottom:16px}.section-heading>p:last-child{font-size:1rem}.scene{position:relative;isolation:isolate;overflow:clip}.scene-image{position:absolute;inset:-10% 0;width:100%;height:120%;max-width:none;object-fit:cover;z-index:-3;will-change:transform}.scene::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}.motion-ready [data-reveal]{opacity:0;transform:translateY(34px);transition:opacity .85s var(--ease),transform 1.05s var(--ease);transition-delay:var(--delay,0ms)}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}.motion-ready [data-reveal="left"]{transform:translateX(-35px)}.motion-ready [data-reveal="left"].is-visible{transform:none}
/* Navigation */
.site-header{position:absolute;top:0;left:0;right:0;height:var(--header);z-index:100;border-bottom:1px solid rgba(228,199,142,.25);background:linear-gradient(100deg,#02101fe8,#06253ac7);transition:background .3s,box-shadow .3s;backdrop-filter:blur(18px)}.site-header.is-fixed{position:fixed;background:#031320eb;box-shadow:0 4px 35px #0004;animation:header-in .4s var(--ease)}@keyframes header-in{from{transform:translateY(-100%)}to{transform:none}}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:6px;width:max-content;flex-shrink:0}.brand-mark{width:66px;height:65px}.brand-type{display:flex;flex-direction:column;line-height:1}.brand-name{font-size:2.15rem;font-weight:800;letter-spacing:-.06em}.brand-sub{font-size:.61rem;letter-spacing:.045em;font-weight:750;color:var(--gold);margin:5px 0 6px}.brand-tag{font-size:.38rem;font-weight:700;letter-spacing:.04em;color:#d5dbe2}.desktop-nav{display:flex;align-items:center;gap:29px}.desktop-nav a{position:relative;padding:15px 0;font-size:.85rem;color:#e0e7ee;font-weight:600}.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover,.desktop-nav a.active{color:var(--gold)}.desktop-nav a.active::after,.desktop-nav a:hover::after{transform:scaleX(1)}.header-cta{min-height:46px;padding:12px 23px;font-size:.8rem;white-space:nowrap}.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);background:#081e31;border-radius:50%}.menu-toggle .icon{width:22px}.mobile-nav{display:none}.reading-progress{position:fixed;left:0;top:0;z-index:110;height:2px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;pointer-events:none}
/* The opening scene stays in place for a short, native scroll. */
.hero-track{position:relative;height:calc(100svh + 190px);min-height:920px}.hero{position:sticky;top:0;height:100svh;min-height:700px;max-height:1120px;display:flex;align-items:center;background:#061b2c}.hero .scene-image{inset:0;width:100%;height:100%;object-position:center center;transform:scale(1.035)}.hero::after{background:linear-gradient(90deg,rgba(2,13,25,.92) 0%,rgba(2,14,26,.77) 27%,rgba(2,14,26,.34) 49%,rgba(2,14,26,0) 78%),linear-gradient(0deg,#031422bd,transparent 30%,transparent 77%,#00122340)}.hero-content{position:relative;padding-top:var(--header);padding-bottom:60px;will-change:transform,opacity}.hero-copy{max-width:580px}.hero .eyebrow{font-size:.8rem;letter-spacing:.13em;margin-bottom:22px}.hero h1{font-size:clamp(2.5rem,4.35vw,4.2rem);line-height:1.065;letter-spacing:-.04em;font-weight:800;max-width:660px}.hero h1 span{display:block}.hero-description{font-size:1.05rem;line-height:1.6;max-width:440px;margin-top:23px;color:#e0e6ed}.hero-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:29px}.trust-features{display:flex;flex-wrap:wrap;gap:22px;margin-top:27px;font-size:.76rem;font-weight:600;color:#e3e9ef}.trust-features span{display:flex;align-items:center;gap:7px}.trust-features svg{color:var(--gold);width:17px;height:17px;stroke-width:2.3}.personal-support{display:flex;align-items:center;gap:15px;margin-top:37px}.support-people{display:flex;padding-left:0}.support-person{display:grid;place-items:center;width:38px;height:38px;border:2px solid #061526;border-radius:50%;margin-left:-9px;background:linear-gradient(145deg,#d9b778,#3c5264);color:#f8efdc}.support-person:first-child{margin-left:0}.support-person:nth-child(2){background:linear-gradient(145deg,#bac6cc,#194467)}.support-person:nth-child(3){background:linear-gradient(145deg,#bb997b,#56443b)}.support-person svg{width:21px;height:21px}.personal-support p{font-size:.79rem;line-height:1.45;color:#d5dfe8}.hero-signature{position:absolute;right:6.6%;top:calc(var(--header) + 56px);font:italic clamp(1.3rem,2.4vw,2.6rem)/1.15 Georgia,serif;color:#f4c468;transform:rotate(-9deg);text-shadow:0 2px 20px #0007;will-change:opacity}.hero-signature span{display:block}.hero-signature::after{content:"";display:block;width:80%;height:1px;background:linear-gradient(90deg,transparent,var(--gold));margin:14px 0 0 16%;transform:rotate(-5deg)}.scroll-cue{position:absolute;bottom:33px;right:max(48px,calc((100vw - 1240px)/2));display:flex;gap:12px;align-items:center;font-size:.63rem;text-transform:uppercase;letter-spacing:.15em;color:#d4dde4}.mouse{height:37px;width:23px;border:1px solid #d4af66aa;border-radius:14px;position:relative}.mouse::after{content:"";position:absolute;top:7px;left:10px;height:7px;width:1px;background:var(--gold);animation:scroll-indicator 2s ease-in-out infinite}@keyframes scroll-indicator{0%,100%{transform:translateY(0);opacity:.3}50%{transform:translateY(9px);opacity:1}}.hero-bottom-line{position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#edd19e77,transparent)}
/* Services */
.services{padding:85px 0 80px;background:radial-gradient(ellipse at 22% 0%,#0b37565e,transparent 50%),linear-gradient(125deg,#051c30,#020d19 68%)}.services::before{content:"";position:absolute;left:-8%;top:10%;width:55%;height:1px;background:linear-gradient(90deg,transparent,#87c7ec11,transparent);transform:rotate(29deg);box-shadow:0 40px 0 #97cef903,0 90px 0 #97cef903}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.service-card{position:relative;padding:30px 25px 25px;text-align:center;border:1px solid #c6c7b743;border-radius:17px;background:radial-gradient(ellipse at 80% 0%,#6095b42b,transparent 40%),linear-gradient(150deg,#0d2a3e99,#031421a8);box-shadow:inset 0 1px 0 #ffffff16,0 12px 30px #00000017;transition:transform .35s var(--ease),border-color .35s,background .35s;min-height:296px;display:flex;align-items:center;flex-direction:column}.service-card::before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 1px 0 0 #f2d29a0d;pointer-events:none}.service-card:hover{transform:translateY(-9px);border-color:#e9b6589c;background-color:#123048}.icon-orb{width:79px;height:79px;border:1px solid #7899b333;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#15354b,#041421 72%);box-shadow:0 0 0 4px #5073940a,inset 0 0 16px #99d6ff0b;margin-bottom:21px;color:var(--gold)}.icon-orb .icon{width:43px;height:43px;stroke-width:1.6}.service-card h3{font-size:1.19rem;letter-spacing:-.025em;margin-bottom:14px}.service-card p{font-size:.9rem;line-height:1.5;max-width:215px;margin-bottom:21px}.learn-more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;padding:7px 6px;color:var(--gold);font-weight:700;font-size:.84rem}.learn-more svg{width:15px;height:15px;transition:transform .25s}.learn-more:hover svg{transform:translateX(4px)}
/* About / full-bleed cinematic portrait */
.about{display:grid;grid-template-columns:minmax(330px,39%) 1fr;min-height:560px;background:radial-gradient(ellipse at 85% 15%,#0b324a8f,transparent 60%),#041726;border-top:1px solid #c6ad7e18;border-bottom:1px solid #c6ad7e38}.about-portrait{position:relative;overflow:hidden;min-height:560px;isolation:isolate}.about-portrait .scene-image{object-position:50% 42%;inset:-6% 0;height:112%}.about-portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0113245c,transparent 50%),linear-gradient(90deg,#051a2c38,transparent 40%,#0417261f)}.portrait-mantra{position:absolute;left:10%;top:11%;z-index:1;font-size:.88rem;line-height:1.5;letter-spacing:.19em;color:#d8d3c4;font-weight:400}.portrait-mantra span{color:var(--gold)}.about-main{display:grid;grid-template-columns:1.18fr 1fr;gap:35px;align-items:center;padding:62px max(42px,calc((100vw - 1240px)/2)) 62px 48px}.about-copy h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:23px}.about-copy>p:not(.eyebrow){font-size:.94rem;line-height:1.7;margin-bottom:28px}.benefits{list-style:none;padding:0;margin:0;display:grid;gap:23px}.benefits li{display:flex;align-items:flex-start;gap:14px}.benefit-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid #e3b86b88;color:var(--gold);background:#081f2c;flex-shrink:0}.benefit-icon .icon{width:25px;height:25px}.benefits h3{font-size:.91rem;line-height:1.3;margin:2px 0 5px}.benefits p{font-size:.78rem;line-height:1.4}
/* Process */
.process{padding:70px 0 67px;background:#052034}.process .scene-image{object-position:center 22%;height:180%;top:-25%;opacity:.36;filter:saturate(.65)}.process::after{background:linear-gradient(0deg,#031421f5,#05243ea8 80%),linear-gradient(90deg,#02142099,#0c304466,#02142099)}.process .section-heading{margin-bottom:42px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;position:relative}.steps::before{content:"";position:absolute;top:49px;left:12.5%;right:12.5%;height:1px;background:repeating-linear-gradient(90deg,#bea66d66 0 3px,transparent 3px 7px);transform:scaleX(var(--line-progress,0));transform-origin:left;transition:transform .15s linear}.step{text-align:center;position:relative}.step-icon{width:98px;height:98px;margin:0 auto 18px;display:grid;place-items:center;border-radius:50%;border:1px solid #e8bc6d99;background:#041724dd;box-shadow:0 0 30px #0b18222b;position:relative;color:var(--gold)}.step-icon svg{width:39px;height:39px}.step-number{position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);background:#061c2b;padding:0 8px;font-size:.84rem;line-height:20px;font-weight:700;letter-spacing:.05em;color:var(--gold)}.step h3{font-size:1.02rem;margin-bottom:13px}.step p{font-size:.89rem;line-height:1.5;max-width:210px;margin:auto}.step:not(:last-child)::after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;right:-21px;top:47px;background:var(--gold);box-shadow:0 0 14px #efbb5b55}
/* Testimonials */
.testimonials{padding:63px 0 47px;background:#061a2b;border-top:1px solid #d9bd8926}.testimonials .scene-image{opacity:.44;object-position:50% 22%;filter:saturate(.7);height:190%;top:-36%}.testimonials::after{background:linear-gradient(0deg,#021421 2%,#011423a6 65%,#091c2977)}.testimonials .section-heading{margin-bottom:34px}.testimonials .section-heading>p:last-child{font-size:.88rem}.testimonials-shell{position:relative}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.quote-card{position:relative;background:linear-gradient(130deg,#1834479e,#041522b3);padding:25px 27px 26px;border:1px solid #aabcc531;border-radius:14px;transition:border-color .45s,transform .45s,box-shadow .45s;isolation:isolate}.quote-card.is-current{border-color:#e6ba665c;box-shadow:0 5px 26px #0002}.quote-card::after{content:'”';font-family:Georgia,serif;font-size:5rem;line-height:1;color:#9ab7c11a;position:absolute;bottom:25px;right:26px;z-index:-1}.stars{color:var(--gold);letter-spacing:3px;font-size:1.08rem;line-height:1;margin-bottom:14px}.quote-card blockquote{margin:0 0 24px;font-size:.94rem;line-height:1.6;color:#edf1f4;min-height:106px}.quote-person{display:flex;align-items:center;gap:11px}.avatar{width:43px;height:43px;display:grid;place-items:center;background:linear-gradient(145deg,#e3c396,#2c3846);border:1px solid #d8c6a355;border-radius:50%;font-size:.73rem;font-weight:700;color:#fff}.quote-card:nth-child(2) .avatar{background:linear-gradient(145deg,#7899b1,#273b4e)}.quote-card:nth-child(3) .avatar{background:linear-gradient(145deg,#caa878,#554437)}.quote-person strong{font-size:.82rem;display:block;line-height:1.5}.quote-person small{display:block;font-size:.7rem;color:#b6c1cb}.carousel-arrow{position:absolute;top:45%;width:37px;height:37px;border-radius:50%;border:1px solid #bfa66f66;display:grid;place-items:center;background:#051322bb;transition:background .2s}.carousel-arrow:hover{background:#1c3446}.carousel-arrow .icon{width:19px;height:19px}.carousel-arrow.prev{left:-49px}.carousel-arrow.next{right:-49px}.carousel-dots{display:flex;align-items:center;justify-content:center;gap:7px;margin:22px 0 0}.carousel-dots button{position:relative;width:24px;height:28px;background:none;border:0;padding:0}.carousel-dots button::after{content:"";position:absolute;height:5px;width:13px;border-radius:8px;background:#728393;left:50%;top:50%;transform:translate(-50%,-50%);transition:background .2s,width .2s}.carousel-dots button[aria-pressed="true"]::after{background:var(--gold);width:20px}.sample-note{font-size:.72rem;text-align:center;color:#b3c1cc;margin-top:7px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
/* The closing scene */
.closing{min-height:510px;display:flex;align-items:center;border-top:1px solid #e4c88c55;background:#051525}.closing .scene-image{object-position:50% 57%}.closing::after{background:linear-gradient(90deg,#010d17bd,#010f1861 48%,#0113212b 75%,#01121c80),linear-gradient(0deg,#01132166,transparent 90%)}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:76px;padding-bottom:77px}.closing-copy{max-width:530px}.closing h2{font-size:clamp(2.3rem,3.5vw,3.6rem);line-height:1.08}.closing-copy>p:not(.eyebrow){color:#e1e4e8;max-width:360px;margin:22px 0 28px;font-size:.95rem}.closing-words{align-self:flex-start;list-style:none;display:grid;gap:22px;padding:0;margin:0}.closing-words li{display:flex;align-items:center;gap:12px;font-size:.75rem;letter-spacing:.09em;font-weight:700;color:#e2e5e5}.closing-words .benefit-icon{width:42px;height:42px;background:#04121a8c}
/* Footer */
.site-footer{background:radial-gradient(ellipse at 8% 0%,#08314a70,transparent 65%),#020f1a;padding-top:62px}.footer-main{display:grid;grid-template-columns:1.15fr .7fr 1.2fr .65fr;gap:54px;padding-bottom:39px}.footer-brand .brand{margin-top:10px}.footer-brand .brand-mark{width:69px;height:71px}.footer-brand .brand-name{font-size:2.2rem}.footer-brand .brand-tag{font-size:.35rem}.footer-heading{font-size:.85rem;font-weight:700;color:#dec99e;margin-bottom:21px;line-height:1.4}.footer-links{display:grid;gap:8px;font-size:.83rem;color:#c2ccd5}.footer-links a:hover,.contact-lines a:hover{color:var(--gold)}.contact-lines{display:grid;gap:13px}.contact-lines a,.contact-lines>span{display:flex;align-items:center;gap:12px;font-size:.8rem;color:#d0d9e1;overflow-wrap:anywhere}.contact-lines .icon{width:20px;height:20px;color:var(--gold)}.socials{display:flex;gap:12px;align-items:center}.social-link{display:grid;place-items:center;width:37px;height:37px;border:0;background:transparent;border-radius:9px;padding:5px;transition:transform .2s}.social-link:hover{transform:translateY(-3px)}.social-link svg{width:29px;height:29px}.payment-strip{border-top:1px solid #7892a11f;padding:22px 0 26px;display:flex;justify-content:space-between;align-items:center;gap:25px}.payment-label{font-size:.76rem;color:#aabcc9}.payments{display:flex;gap:9px;align-items:center}.payment-card{height:30px;min-width:48px;padding:3px 7px;background:#e9edf1;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#102f55;box-shadow:0 0 0 1px #ffffff11}.payment-card svg{height:22px;width:39px}.payment-card.visa{font-size:1.06rem;font-style:italic;font-weight:900;letter-spacing:-.06em;color:#193277}.payment-card.amex{font-size:.51rem;line-height:1;font-weight:800;background:#276bac;color:#fff;text-align:center;letter-spacing:-.02em}.payment-card.discover{font-size:.55rem;font-weight:800;background:linear-gradient(150deg,#e9edf1 67%,#ed993c 68%);color:#23262a}.footer-bottom{border-top:1px solid #7692a11f;padding:23px 0 28px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:.72rem;color:#97a9b8}.legal-links{display:flex;gap:15px;flex-wrap:wrap}.legal-links button{background:none;border:0;padding:0;font-size:inherit;color:inherit}.legal-links button:hover{color:var(--gold)}.legal-links button+button::before{content:'|';color:#627482;margin-right:15px}.back-top{display:flex;align-items:center;gap:9px}.back-top .icon{width:15px;height:15px}
/* Information panels */
.info-dialog{width:min(570px,calc(100% - 32px));max-height:85svh;overflow:auto;border:1px solid #d1b37b70;border-radius:18px;padding:43px;background:radial-gradient(ellipse at top right,#133751,#061826 75%);color:var(--text);box-shadow:0 30px 120px #0008}.info-dialog::backdrop{background:#000a;backdrop-filter:blur(7px)}.dialog-close{position:absolute;top:14px;right:14px;width:35px;height:35px;display:grid;place-items:center;border:1px solid #7294af55;border-radius:50%;background:transparent}.dialog-close .icon{width:18px;height:18px}.info-dialog h2{font-size:2rem;line-height:1.15;max-width:430px;margin:13px 0 22px}.dialog-body{font-size:.98rem;line-height:1.7;color:var(--muted)}.dialog-body p+p{margin-top:15px}.dialog-body ul{padding-left:20px;margin:15px 0}.dialog-body li+li{margin-top:9px}.dialog-body a{color:var(--gold);overflow-wrap:anywhere}.info-dialog .button{margin-top:25px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,25px);z-index:500;max-width:calc(100vw - 40px);padding:14px 22px;background:#122d40;border:1px solid #d5b37180;border-radius:10px;font-size:.85rem;color:#ecf1f6;box-shadow:0 10px 40px #0006;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none}.toast.is-visible{opacity:1;transform:translate(-50%,0)}
/* ---- Language switch / Selector de idioma ---- */
.lang-switch{display:flex;align-items:center;gap:2px;flex-shrink:0;padding:3px;border:1px solid var(--line);border-radius:30px;background:#04182a80;backdrop-filter:blur(12px)}
.lang-switch .lang-globe{width:17px;height:17px;margin-left:8px;margin-right:2px;color:var(--gold);opacity:.85;stroke-width:1.5}
.lang-switch button{min-width:36px;padding:7px 10px;border:0;border-radius:24px;background:transparent;color:#c8d3de;font-size:.72rem;font-weight:800;letter-spacing:.07em;line-height:1;transition:background .25s var(--ease),color .25s var(--ease)}
.lang-switch button:hover{color:var(--gold-light)}
.lang-switch button.is-active{color:#08202f;background:linear-gradient(115deg,#ffdf96,#eeb955);box-shadow:inset 0 1px 0 #ffedbb80}
.mobile-lang{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding-top:15px;border-top:1px solid var(--line)}
.mobile-lang-label{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
/* ===== Legal & error pages / Páginas legales y de error ===== */
body.legal .site-header{position:sticky;top:0}
body.legal .site-header.is-fixed{position:sticky;box-shadow:0 4px 35px #0004}
.legal-main{padding:clamp(48px,6vw,86px) 0 10px}
.legal-head{max-width:820px;margin-bottom:clamp(30px,4vw,46px)}
.legal-head h1{font-size:clamp(2.1rem,4.2vw,3.4rem);letter-spacing:-.045em;font-weight:750;margin-bottom:18px}
.legal-head .updated{font-size:.82rem;color:#9fb0c1}
.legal-head .lead{margin-top:18px;font-size:1.02rem;max-width:70ch}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(30px,4vw,64px);align-items:start;padding-bottom:clamp(60px,7vw,100px)}
.legal-toc{min-width:0;position:sticky;top:calc(var(--header) + 26px);border:1px solid var(--line);border-radius:16px;padding:22px 20px;background:#04182a7a}
.legal-toc h2{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:14px}
.legal-toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;display:grid;gap:3px}
.legal-toc a{display:block;padding:7px 9px;border-radius:8px;font-size:.83rem;line-height:1.35;color:#c3ced9;counter-increment:toc;transition:background .2s,color .2s}
.legal-toc a::before{content:counter(toc) ". ";color:var(--gold);font-weight:700}
.legal-toc a:hover{background:#0d2d46;color:#fff}
.legal-body{max-width:78ch;min-width:0;font-size:1rem;overflow-wrap:break-word}
.legal-body section{scroll-margin-top:0;padding-bottom:34px}
.legal-body section+section{border-top:1px solid #16334b;padding-top:34px}
.legal-body h2{font-size:clamp(1.24rem,2vw,1.6rem);letter-spacing:-.02em;font-weight:750;margin-bottom:15px;color:#fff}
.legal-body h3{font-size:1rem;font-weight:700;margin:22px 0 9px;color:var(--gold-light)}
.legal-body p{margin-bottom:14px}
.legal-body ul,.legal-body ol{margin:0 0 15px;padding-left:22px;color:var(--muted)}
.legal-body li{margin-bottom:8px}
.legal-body li::marker{color:var(--gold)}
.legal-body strong{color:#eef2f7}
.legal-body a:not(.button){color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.legal-body a:not(.button):hover{color:var(--gold-light)}
.legal-body table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:.9rem}
.legal-body th,.legal-body td{border:1px solid #183350;padding:10px 12px;text-align:left;vertical-align:top}
.legal-body th{background:#0a2439;color:#fff;font-weight:700}
.legal-body td{color:var(--muted)}
.statute{border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:12px;background:#03141fb3;padding:clamp(20px,3vw,30px);margin:0 0 18px}
.statute p{margin-bottom:13px;color:#dbe3ec}
.statute p:last-child{margin-bottom:0}
.statute .statute-title{text-align:center;font-weight:800;letter-spacing:.02em;color:#fff;font-size:1.02rem;margin-bottom:18px;text-transform:uppercase}
.statute address{font-style:normal;color:#dbe3ec;line-height:1.5}
.callout{border:1px solid var(--line);border-radius:14px;background:#0a243a80;padding:20px 22px;margin:0 0 18px;display:flex;gap:14px}
.callout svg{width:22px;height:22px;flex-shrink:0;color:var(--gold);stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:2px}
.callout p:last-child{margin-bottom:0}
.callout.strong{border-color:#e8b95a66;background:#2a1d0866}
.todo{background:#ffd76b;color:#1a1204;padding:1px 7px;border-radius:5px;font-weight:700;font-size:.92em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.draft-banner{position:relative;z-index:99;background:linear-gradient(100deg,#7a2323,#a33232);color:#fff;text-align:center;padding:11px 20px;font-size:.84rem;line-height:1.45;font-weight:600}
.draft-banner strong{color:#ffdca6}
/* 404 */
.error-page{min-height:calc(100vh - var(--header));display:grid;place-items:center;text-align:center;padding:60px 0 90px}
.error-code{font-size:clamp(5.5rem,17vw,12rem);line-height:.85;font-weight:800;letter-spacing:-.06em;background:linear-gradient(130deg,#ffdf96,#e8aa40 55%,#8a6a2a);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:8px}
.error-page h1{font-size:clamp(1.7rem,3.4vw,2.7rem);letter-spacing:-.04em;margin-bottom:16px}
.error-page p{max-width:52ch;margin:0 auto 30px}
.error-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.error-links{margin-top:42px;padding-top:26px;border-top:1px solid #16334b;display:flex;flex-wrap:wrap;gap:10px 26px;justify-content:center}
.error-links a{font-size:.88rem;color:#c3ced9}
.error-links a:hover{color:var(--gold)}
.contact-block .contact-lines{display:grid;gap:11px;margin-top:6px}
.contact-block .contact-lines a{display:inline-flex;align-items:center;gap:11px;color:var(--gold);text-decoration:none;font-weight:600;width:max-content}
.contact-block .contact-lines a:hover{color:var(--gold-light)}
.contact-block .contact-lines .icon{width:19px;height:19px}
.legal-links span[aria-current]{color:var(--gold);font-weight:700}
/* ===== Consultation modal / Modal de consulta ===== */
.consult-dialog{width:min(620px,calc(100vw - 32px));max-height:min(88vh,900px);padding:0;border:1px solid var(--line);border-radius:22px;background:linear-gradient(168deg,#07203a,#03121f 62%);color:var(--text);overflow:hidden;box-shadow:0 30px 90px #000a}
.consult-dialog::backdrop{background:#020b14d9;backdrop-filter:blur(6px)}
.consult-dialog[open]{animation:consult-in .34s var(--ease)}
@keyframes consult-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
#consult-pane,.consult-success{max-height:min(88vh,900px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:clamp(24px,4vw,40px)}
.consult-dialog .dialog-close{position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#04182ae0;color:var(--text);backdrop-filter:blur(8px);transition:background .2s,border-color .2s}
.consult-dialog .dialog-close:hover{background:#12354f;border-color:var(--gold)}
#consult-title{font-size:clamp(1.5rem,3vw,2.05rem);letter-spacing:-.035em;font-weight:750;margin-bottom:12px;padding-right:44px}
.consult-intro{margin-bottom:18px;font-size:.96rem;max-width:52ch}
.consult-context{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;padding:7px 14px;border:1px solid #e8b95a4d;border-radius:30px;background:#2a1f0a66;font-size:.79rem;font-weight:700;letter-spacing:.03em;color:var(--gold-light)}
.consult-context[hidden]{display:none}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.form-status{margin:0 0 18px;padding:13px 16px;border-radius:11px;font-size:.9rem;line-height:1.45;border:1px solid transparent}
.form-status.is-error{background:#3a141499;border-color:#e0707099;color:#ffd9d9}
.field{margin-bottom:18px;border:0;padding:0;min-width:0}
fieldset.field{margin-inline:0}
.field label,.field legend{display:block;margin-bottom:7px;font-size:.86rem;font-weight:700;color:#e4ebf2;padding:0}
.field .req{color:var(--gold);margin-left:2px}
.field .optional{font-weight:600;font-size:.76rem;color:#8fa2b4;letter-spacing:.04em;text-transform:uppercase;margin-left:6px}
.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{width:100%;min-width:0;padding:13px 15px;border:1px solid #23445f;border-radius:11px;background:#02101cc4;color:var(--text);font-size:.97rem;line-height:1.4;transition:border-color .2s,box-shadow .2s,background .2s}
.field textarea{resize:vertical;min-height:98px;font-family:inherit}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efbb5b' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:17px;padding-right:40px;cursor:pointer}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px #efbb5b2e;background:#03182acc}
.field input::placeholder,.field textarea::placeholder{color:#6d8296}
.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:#e87979;box-shadow:0 0 0 3px #e8797926}
.field-hint{margin:7px 0 0;font-size:.8rem;color:#90a3b6}
.field-warning{margin:0;font-size:.79rem;line-height:1.45;color:#c2a86f}
.field-error{margin:7px 0 0;font-size:.82rem;font-weight:600;color:#ff9c9c}
.phone-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.4fr);gap:10px}
.callback-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.callback-row[hidden]{display:none}
.message-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-top:7px}
.counter{flex-shrink:0;font-size:.78rem;color:#8fa2b4;font-variant-numeric:tabular-nums;padding-top:1px}
.counter.is-over{color:#ff9c9c;font-weight:700}
.segmented{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seg-option{position:relative;margin:0}
.seg-option input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.seg-option span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 14px;border:1px solid #23445f;border-radius:11px;background:#02101cc4;font-size:.92rem;font-weight:600;text-align:center;transition:border-color .2s,background .2s,color .2s}
.seg-option input:hover+span{border-color:#3d6a92}
.seg-option input:checked+span{border-color:var(--gold);background:linear-gradient(120deg,#2a1f0a,#1b2c3d);color:#ffdf96}
.seg-option input:focus-visible+span{outline:2px solid var(--gold-light);outline-offset:3px}
.consent-field{margin-top:22px;padding-top:20px;border-top:1px solid #16334b}
label.consent{display:flex;align-items:flex-start;gap:12px;margin:0;font-size:.88rem;font-weight:500;line-height:1.5;color:var(--muted);cursor:pointer}
label.consent input{flex-shrink:0;width:21px;height:21px;margin:1px 0 0;accent-color:#efbb5b;cursor:pointer}
label.consent a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.submit-button{width:100%;margin-top:6px}
.submit-button[disabled]{opacity:.72;cursor:progress;transform:none}
.submit-note{margin:11px 0 0;text-align:center;font-size:.8rem;color:#90a3b6}
.consult-success{text-align:center;display:grid;place-content:center;gap:15px;min-height:330px}
.consult-success:focus{outline:0}
.success-mark{justify-self:center;display:grid;place-items:center;width:70px;height:70px;border-radius:50%;border:1px solid #efbb5b66;background:#2a1f0a;color:var(--gold)}
.success-mark .icon{width:34px;height:34px;stroke-width:1.6}
#success-heading{font-size:clamp(1.12rem,2.2vw,1.42rem);line-height:1.4;letter-spacing:-.02em;font-weight:700;max-width:44ch;margin-inline:auto}
.success-sub{font-size:.9rem;max-width:42ch;margin-inline:auto}
.success-ref{font-size:.78rem;color:#7e93a7;font-variant-numeric:tabular-nums}
.consult-success .button{justify-self:center;margin-top:6px}
/* ===== About Us page / Página About Us ===== */
.page-hero{position:relative;min-height:min(78svh,760px);display:flex;align-items:center;background:#061b2c;border-bottom:1px solid #c6ad7e38}
.page-hero .scene-image{object-position:50% 46%}
.page-hero::after{background:linear-gradient(90deg,rgba(2,13,25,.94) 0%,rgba(2,14,26,.82) 30%,rgba(2,14,26,.42) 56%,rgba(2,14,26,.12) 82%),linear-gradient(0deg,#031422cc,transparent 34%,transparent 74%,#00122366)}
.page-hero-inner{position:relative;padding-top:calc(var(--header) + clamp(48px,7vw,92px));padding-bottom:clamp(56px,7vw,96px)}
.page-hero-copy{max-width:620px}
.page-hero .eyebrow{font-size:.8rem;letter-spacing:.17em;margin-bottom:20px}
.page-hero h1{font-size:clamp(2.35rem,4.6vw,4rem);line-height:1.06;letter-spacing:-.04em;font-weight:800}
.page-hero .hero-description{max-width:520px}
.page-hero .hero-actions{margin-top:32px}
/* "Who we are": una sola columna de texto junto al retrato. */
.about-main--single{grid-template-columns:minmax(0,1fr)}
.about-main--single .about-copy{max-width:660px}
.about-main--single .about-copy>p:not(.eyebrow){margin-bottom:20px}
.about-main--single .about-copy>p:last-child{margin-bottom:0}
/* "Support Built Around You" */
.expect{padding:clamp(70px,8vw,110px) 0 clamp(78px,9vw,120px);background:radial-gradient(ellipse at 50% 0%,#0d334c73,transparent 62%),linear-gradient(180deg,#041726,#03121f)}
.expect .section-heading{margin-bottom:clamp(38px,5vw,52px)}
.expect .service-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:30px}
.expect .service-card p{margin-bottom:0}
.closing-inner--centered{justify-content:flex-start}
/* ===== Services page / Página Services ===== */
.svc-anchor{position:relative;height:0;scroll-margin-top:0}
.icon-down{transform:rotate(90deg)}
.svc{position:relative;padding:clamp(66px,7.5vw,108px) 0}
.svc--split,.svc--split.svc--reverse{background:linear-gradient(180deg,#041726,#03121f)}
.svc--wide{background:radial-gradient(ellipse at 50% 0%,#0d334c6b,transparent 60%),linear-gradient(180deg,#03121f,#041726)}
.svc+.svc{border-top:1px solid #12314a}
.svc-split-inner{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(34px,5vw,72px);align-items:center}
.svc--reverse .svc-split-inner>.svc-copy{order:2}
.svc--reverse .svc-split-inner>.svc-visual{order:1}
.svc-wide-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(34px,5vw,74px);align-items:center}
.svc-copy{max-width:600px;min-width:0}
.svc-head{display:flex;align-items:center;gap:16px;margin-bottom:19px}
.svc-orb{flex-shrink:0;width:60px;height:60px;display:grid;place-items:center;border-radius:50%;border:1px solid #7899b340;background:radial-gradient(circle at 50% 38%,#15354b,#041421 74%);box-shadow:0 0 0 4px #5073940d,inset 0 0 16px #99d6ff0d;color:var(--gold)}
.svc-orb .icon{width:31px;height:31px;stroke-width:1.6}
.svc-tag{margin-bottom:0;font-size:.74rem;letter-spacing:.17em}
.svc h2{font-size:clamp(1.72rem,2.9vw,2.62rem);letter-spacing:-.035em;margin-bottom:17px;max-width:19ch}
.svc-lead{font-size:1rem;line-height:1.68;max-width:56ch;margin-bottom:26px}
.svc-points{list-style:none;padding:0;margin:0 0 30px;display:grid;gap:13px}
.svc-points--two{margin-bottom:0;grid-template-columns:1fr 1fr;gap:18px 26px}
.svc-points li{display:flex;align-items:flex-start;gap:12px;font-size:.93rem;line-height:1.5;color:var(--muted)}
.svc-points .icon{width:21px;height:21px;flex-shrink:0;margin-top:2px;color:var(--gold);stroke-width:1.7}
.svc-visual{position:relative;min-width:0;height:clamp(330px,38vw,470px);border-radius:20px;overflow:hidden;isolation:isolate;border:1px solid #c6ad7e33;box-shadow:0 26px 60px #0006}
.svc-visual .scene-image{inset:-8% 0;height:116%}
.svc-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#02101cb0,transparent 52%),linear-gradient(100deg,#04182a4d,transparent 55%);pointer-events:none}
.svc-disclaimer{margin-top:20px;font-size:.79rem;line-height:1.5;color:#93a5b6;max-width:46ch}
.closing .svc-disclaimer{margin-bottom:0}
/* ===== Testimonials page / Página Testimonials ===== */
.page-hero--centered .page-hero-inner{text-align:center}
.page-hero--centered .page-hero-copy{max-width:760px;margin-inline:auto}
.page-hero--centered .hero-description{margin-inline:auto}
.page-hero--centered::after{background:linear-gradient(180deg,rgba(2,13,25,.86) 0%,rgba(2,14,26,.72) 45%,rgba(2,14,26,.9) 100%),linear-gradient(90deg,#02101cb3,transparent 40%,#02101cb3)}
.tm-section{padding:clamp(66px,8vw,110px) 0 clamp(72px,9vw,118px);background:radial-gradient(ellipse at 50% 0%,#0d334c5e,transparent 62%),linear-gradient(180deg,#041726,#03121f)}
.tm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,26px);align-items:start}
.tm-grid[hidden]{display:none}
.tm-card{position:relative;display:flex;flex-direction:column;gap:15px;margin:0;padding:clamp(24px,2.6vw,32px);border:1px solid #c6c7b743;border-radius:18px;background:radial-gradient(ellipse at 82% 0%,#6095b426,transparent 42%),linear-gradient(150deg,#0d2a3e99,#031421a8);box-shadow:inset 0 1px 0 #ffffff14,0 14px 34px #0000001f;transition:transform .35s var(--ease),border-color .35s}
.tm-card:hover{transform:translateY(-6px);border-color:#e9b65880}
.tm-card::before{content:"\201C";position:absolute;top:8px;right:20px;font:800 4.6rem/1 Georgia,serif;color:#efbb5b1a;pointer-events:none}
.tm-stars{font-size:1.02rem;letter-spacing:.14em;color:var(--gold);line-height:1}
.tm-card blockquote{margin:0;font-size:.97rem;line-height:1.62;color:#dbe3ec}
.tm-person{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:16px;border-top:1px solid #ffffff12}
.tm-avatar{flex-shrink:0;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:.86rem;font-weight:800;letter-spacing:.03em;color:#08202f;background:linear-gradient(135deg,#ffdf96,#e8aa40);box-shadow:inset 0 1px 0 #fff6}
.tm-avatar--photo{object-fit:cover;background:#0d2a3e;box-shadow:0 0 0 2px #efbb5b55}
.tm-who{display:flex;flex-direction:column;gap:3px;min-width:0}
.tm-who strong{font-size:.94rem;color:#f1f5f9;letter-spacing:-.01em}
.tm-who small{font-size:.77rem;color:#93a5b6;line-height:1.35}
.tm-verified{align-self:flex-start;margin-top:3px;padding:2px 9px;border:1px solid #6fce9f55;border-radius:20px;background:#0f2e2466;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8fe0b6}
.tm-more{margin:26px 0 0;text-align:center}
.tm-more a{display:inline-flex;align-items:center;gap:9px;font-size:.88rem;font-weight:700;color:var(--gold)}
.tm-more a:hover{color:var(--gold-light)}
.tm-more .icon{width:16px;height:16px;transition:transform .25s}
.tm-more a:hover .icon{transform:translateX(4px)}
/* Estado vacío: no hay reseñas reales todavía */
.tm-empty{max-width:720px;margin-inline:auto;text-align:center;padding:clamp(38px,5vw,60px) clamp(24px,4vw,52px);border:1px solid var(--line);border-radius:22px;background:radial-gradient(ellipse at 50% 0%,#12395480,transparent 64%),linear-gradient(160deg,#0a2438a8,#03131fc4);box-shadow:inset 0 1px 0 #ffffff12,0 20px 50px #00000024}
.tm-empty[hidden]{display:none}
.tm-empty-orb{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 22px;border-radius:50%;border:1px solid #7899b340;background:radial-gradient(circle at 50% 38%,#15354b,#041421 74%);color:var(--gold)}
.tm-empty-orb .icon{width:34px;height:34px;stroke-width:1.5}
.tm-empty h2,.tm-empty h3{font-size:clamp(1.5rem,2.7vw,2.15rem);letter-spacing:-.03em;margin-bottom:15px}
.tm-empty p{font-size:.97rem;line-height:1.65;max-width:50ch;margin:0 auto 28px}
.tm-empty-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.tm-empty--compact{margin-top:6px}
.demo-banner code{background:#ffffff26;padding:1px 6px;border-radius:4px;font-size:.92em}
/* ===== Contact page / Página de contacto ===== */
.contact-main{background:radial-gradient(ellipse at 50% 0%,#0d334c66,transparent 58%),linear-gradient(180deg,#041726,#03121f)}
.contact-intro{padding:calc(var(--header) + clamp(38px,5vw,64px)) 0 clamp(26px,3.4vw,40px)}
.contact-intro-copy{max-width:760px}
.contact-intro .eyebrow{font-size:.78rem;letter-spacing:.17em;margin-bottom:16px}
.contact-intro h1{font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.08;letter-spacing:-.04em;font-weight:800;margin-bottom:16px}
.contact-lead{font-size:1.02rem;line-height:1.65;max-width:62ch;color:#dbe3ec}
.contact-body{padding:0 0 clamp(64px,8vw,104px)}
.contact-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(26px,3.4vw,54px);align-items:start}
.contact-info{position:sticky;top:calc(var(--header) + 26px);padding:clamp(26px,3vw,36px);border:1px solid var(--line);border-radius:20px;background:linear-gradient(160deg,#0a2438a6,#03131fc2);box-shadow:inset 0 1px 0 #ffffff12,0 18px 44px #00000022}
.contact-info h2{font-size:clamp(1.3rem,2.1vw,1.72rem);letter-spacing:-.03em;margin-bottom:11px}
.contact-info-lead{font-size:.93rem;line-height:1.55;margin-bottom:26px}
.contact-channels{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:19px}
.contact-channels li{display:flex;align-items:flex-start;gap:14px}
.channel-orb{flex-shrink:0;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;border:1px solid #7899b340;background:radial-gradient(circle at 50% 38%,#15354b,#041421 74%);color:var(--gold)}
.channel-orb .icon{width:21px;height:21px;stroke-width:1.7}
.channel-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.channel-label{font-size:.71rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:#8fa2b4}
.channel-body a{font-size:.97rem;font-weight:600;color:var(--gold);word-break:break-word}
.channel-body a:hover{color:var(--gold-light);text-decoration:underline;text-underline-offset:3px}
.channel-value{font-size:.97rem;font-weight:600;color:#e6edf4}
.contact-social{padding-top:22px;border-top:1px solid #16334b}
.contact-social[hidden]{display:none}
.contact-social h3{font-size:.71rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:13px}
.contact-social-links{display:flex;flex-wrap:wrap;gap:10px}
.contact-social-link{padding:8px 15px;border:1px solid var(--line);border-radius:24px;font-size:.84rem;font-weight:600;color:#dbe3ec;transition:border-color .2s,background .2s,color .2s}
.contact-social-link:hover{border-color:var(--gold);background:#12354f;color:var(--gold-light)}
.contact-note{margin:24px 0 0;padding-top:20px;border-top:1px solid #16334b;font-size:.79rem;line-height:1.55;color:#8fa2b4}
.contact-form-card{padding:clamp(26px,3.2vw,40px);border:1px solid var(--line);border-radius:20px;background:linear-gradient(168deg,#07203a,#03121f 68%);box-shadow:inset 0 1px 0 #ffffff12,0 24px 60px #00000030;scroll-margin-top:calc(var(--header) + 20px)}
.contact-form-card #contact-title{font-size:clamp(1.42rem,2.5vw,1.95rem);letter-spacing:-.035em;margin-bottom:11px}
.contact-form-card .consult-intro{margin-bottom:24px}
.contact-form-card .consult-success{min-height:0;padding:clamp(18px,3vw,36px) 0;gap:13px}.contact-form-card .success-heading{font-size:clamp(1.12rem,1.75vw,1.42rem);line-height:1.42;max-width:38ch}.contact-form-card .success-mark{width:60px;height:60px}.contact-form-card .success-mark .icon{width:29px;height:29px}
/* ===== Privacy draft: legibilidad y marcas de verificación ===== */
.legal-head--animate{animation:legal-head-in .6s var(--ease) both}
@keyframes legal-head-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.legal-subtitle{font-size:clamp(1.02rem,1.7vw,1.22rem);line-height:1.5;color:#dbe3ec;margin:-6px 0 16px;max-width:52ch}
.legal-body{font-size:1.02rem;line-height:1.72;max-width:72ch}
.legal-body section{padding-bottom:40px}
.legal-body section+section{padding-top:40px}

.legal-body p{margin-bottom:16px}
.legal-body li{margin-bottom:10px;line-height:1.65}
.legal-body code{padding:2px 7px;border-radius:5px;background:#0c2a40;border:1px solid #1d4259;font-size:.9em;color:#ffdf96}
.verified-tag{display:inline-block;margin-left:2px;padding:2px 9px;border:1px solid #6fce9f4d;border-radius:20px;background:#0f2e2459;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#8fe0b6;white-space:nowrap;vertical-align:1px}
.legal-body .contact-lines{display:grid;gap:12px;margin:0 0 18px}
.legal-body .contact-lines a,.legal-body .contact-lines>span{display:inline-flex;align-items:center;gap:11px;font-weight:600;width:max-content;max-width:100%}
.legal-body .contact-lines a{color:var(--gold);text-decoration:none}
.legal-body .contact-lines a:hover{color:var(--gold-light);text-decoration:underline;text-underline-offset:3px}
.legal-body .contact-lines .icon{width:19px;height:19px;flex-shrink:0;color:var(--gold)}
.legal-body .contact-lines>span{color:#e6edf4}
@media(min-width:961px){.mobile-lang{display:none}}
@media(min-width:1600px){.hero-copy{max-width:660px}.hero h1{font-size:4.6rem}.hero-description{font-size:1.13rem}.about-main{padding-left:65px;gap:45px}}
@media(max-width:1180px){.container{width:calc(100% - 70px)}.desktop-nav{gap:19px}.brand-mark{width:57px;height:57px}.brand-name{font-size:1.85rem}.brand-sub{font-size:.54rem}.brand-tag{font-size:.34rem}.header-inner{gap:23px}.about{grid-template-columns:34% 1fr}.about-main{padding:48px 35px;gap:25px;grid-template-columns:1.12fr 1fr}.benefits{gap:20px}.benefits li{gap:10px}.benefit-icon{width:37px;height:37px}.benefits h3{font-size:.84rem}.benefits p{font-size:.76rem}.service-card{padding:27px 17px 20px}.service-grid{gap:17px}.service-card h3{font-size:1.08rem}.footer-main{gap:28px;grid-template-columns:1.05fr .65fr 1.25fr .7fr}.carousel-arrow.prev{left:-30px}.carousel-arrow.next{right:-30px}.hero-signature{right:5%;font-size:2rem}.quote-card{padding:24px 21px}.hero h1{font-size:clamp(2.6rem,4.7vw,3.9rem)}.lang-switch button{min-width:33px;padding:6px 8px;font-size:.69rem}.lang-switch .lang-globe{margin-left:6px}.page-hero{min-height:min(74svh,700px)}.svc h2{max-width:22ch}}
@media(max-width:960px){:root{--header:82px}.desktop-nav{gap:18px}.desktop-nav a{font-size:.77rem}.header-cta{padding:11px 17px;min-height:42px;font-size:.75rem}.brand-mark{width:49px;height:53px}.brand-name{font-size:1.65rem}.brand-sub{font-size:.48rem}.brand-tag{font-size:.29rem}.hero-track{min-height:880px}.hero{min-height:690px}.hero-copy{max-width:490px}.hero h1{font-size:3rem}.hero-description{max-width:360px}.hero::after{background:linear-gradient(90deg,#02101aea,#031322bd 35%,#0315224d 70%),linear-gradient(0deg,#031422bd,transparent 30%)}.hero-signature{font-size:1.55rem;right:4%;top:calc(var(--header) + 40px)}.trust-features{gap:15px;font-size:.69rem}.service-grid{gap:14px}.service-card{padding:25px 14px 20px}.service-card p{font-size:.83rem}.service-card h3{font-size:1rem}.icon-orb{width:69px;height:69px}.about{grid-template-columns:36% 1fr}.about-main{grid-template-columns:1fr;gap:30px;padding:42px 34px}.about-copy h2{max-width:390px}.about-copy>p:not(.eyebrow){max-width:440px}.benefits{grid-template-columns:1fr 1fr;gap:22px 18px}.benefits li:last-child{grid-column:1/-1}.benefits p{font-size:.74rem}.about-portrait .scene-image{object-position:48% center}.portrait-mantra{font-size:.78rem}.steps{gap:23px}.step:not(:last-child)::after{right:-14px}.step h3{font-size:.94rem}.step p{font-size:.82rem}.quote-card blockquote{font-size:.84rem;min-height:128px}.footer-main{grid-template-columns:1.1fr .8fr 1.25fr;row-gap:38px}.footer-social{grid-column:1/-1;display:flex;align-items:center;gap:24px}.footer-social .footer-heading{margin:0}.closing-words{margin-right:10px}.closing h2{font-size:2.8rem}.closing{min-height:475px}.closing-copy{max-width:420px}.header-inner>.lang-switch{margin-left:auto}.header-cta{margin-left:0}.legal-layout{grid-template-columns:minmax(0,1fr)}.legal-toc{position:static;order:-1}.legal-toc ol{grid-template-columns:1fr 1fr;display:grid}.about-main--single{padding:52px max(32px,calc((100vw - 1240px)/2)) 56px 40px}.service-grid{grid-template-columns:1fr 1fr;gap:18px}.svc-split-inner,.svc-wide-inner{grid-template-columns:minmax(0,1fr);gap:34px}.svc--reverse .svc-split-inner>.svc-copy{order:1}.svc--reverse .svc-split-inner>.svc-visual{order:2}.svc-copy{max-width:100%}.svc-visual{height:clamp(280px,44vw,380px)}.tm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-info{position:static;order:2}.contact-form-card{order:1}}
@media(min-width:761px) and (max-width:960px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-cta{margin-left:auto}.mobile-nav{position:absolute;top:var(--header);left:0;right:0;background:#061a2a;border-bottom:1px solid var(--line);padding:18px 35px 25px;box-shadow:0 20px 35px #0005}.mobile-nav.is-open{display:grid;gap:5px;isolation:isolate}.mobile-nav a{padding:11px 8px;font-size:.95rem;color:#e0e7ed}}
@media(max-width:760px){:root{--header:76px}.container{width:calc(100% - 42px)}.desktop-nav{display:none}.header-cta{margin-left:auto;min-height:39px;padding:11px 17px}.header-cta svg{display:none}.menu-toggle{display:flex;flex-shrink:0}.header-inner{gap:12px}.brand-mark{width:44px;height:48px}.brand-name{font-size:1.57rem}.brand-sub{font-size:.45rem}.brand-tag{font-size:.275rem}.mobile-nav{position:absolute;top:var(--header);left:0;right:0;background:#061a2a;border-bottom:1px solid var(--line);padding:15px 24px 25px;box-shadow:0 20px 35px #0005}.mobile-nav.is-open{display:grid;gap:5px;isolation:isolate}.mobile-nav a{padding:11px 8px;font-size:.95rem;color:#e0e7ed}.mobile-nav a:hover{color:var(--gold)}.hero-track{height:calc(100svh + 90px);min-height:850px}.hero{height:100svh;min-height:760px;max-height:none;align-items:flex-start}.hero .scene-image{object-position:65% center}.hero::after{background:linear-gradient(90deg,#02101af5,#031422a6 66%,#0314226b),linear-gradient(0deg,#031422eb 1%,#03142220 42%,#04172677)}.hero-content{padding-top:calc(var(--header) + 68px);padding-bottom:115px}.hero-copy{max-width:510px}.hero h1{font-size:clamp(2rem,8.7vw,3.35rem);max-width:500px}.hero .eyebrow{font-size:.72rem;letter-spacing:.1em;margin-bottom:20px}.hero-description{font-size:1rem;max-width:350px;line-height:1.6}.hero-actions{gap:11px;margin-top:27px}.hero-actions .button{padding:14px 20px;font-size:.82rem;gap:9px}.hero-signature{display:none}.trust-features{font-size:.69rem;gap:15px 13px;margin-top:25px}.trust-features svg{width:16px;height:16px}.personal-support{margin-top:30px}.scroll-cue{right:23px;bottom:27px}.scroll-cue>span:last-child{font-size:.58rem}.services{padding:61px 0 57px}.section-heading{margin-bottom:32px}.section-heading h2{font-size:2rem;line-height:1.13;letter-spacing:-.04em}.section-heading>p:last-child{font-size:.9rem}.eyebrow{font-size:.71rem;letter-spacing:.13em}.service-grid{grid-template-columns:1fr 1fr;gap:16px}.service-card{padding:25px 17px 22px;min-height:288px}.service-card h3{font-size:1.12rem;line-height:1.15}.service-card p{font-size:.85rem}.icon-orb{margin-bottom:19px}.about{grid-template-columns:1fr}.about-portrait{min-height:420px;height:420px}.about-portrait .scene-image{object-position:center 32%;height:135%;top:-16%}.portrait-mantra{left:8%;top:15%;font-size:.87rem}.about-main{padding:47px 24px 50px;grid-template-columns:1fr;gap:37px}.about-copy{max-width:560px}.about-copy h2{font-size:2.4rem;max-width:500px}.about-copy>p:not(.eyebrow){font-size:.97rem;max-width:560px}.benefits{grid-template-columns:1fr 1fr;gap:26px 18px}.benefits h3{font-size:.91rem}.benefits p{font-size:.81rem}.benefits li:last-child{grid-column:auto}.benefit-icon{width:39px;height:39px}.process{padding:58px 0}.process .section-heading{margin-bottom:34px}.steps{grid-template-columns:1fr 1fr;gap:39px 23px}.steps::before,.step::after{display:none}.step-icon{width:85px;height:85px;margin-bottom:20px}.step h3{font-size:1rem}.step p{font-size:.87rem}.testimonials{padding:54px 0 34px}.testimonials .section-heading h2{font-size:2rem}.quote-grid{display:block;padding:0 16px}.quote-card{display:none;padding:27px 25px;min-height:253px}.quote-card.is-current{display:block;animation:quote-in .45s var(--ease)}@keyframes quote-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.quote-card blockquote{font-size:1rem;min-height:94px;line-height:1.65}.quote-person strong{font-size:.85rem}.quote-person small{font-size:.73rem}.carousel-arrow.prev{left:-2px}.carousel-arrow.next{right:-2px}.carousel-arrow{width:32px;height:32px}.sample-note{font-size:.7rem;margin-top:3px}.closing{min-height:550px}.closing-inner{padding-top:54px;padding-bottom:61px;display:block}.closing-copy{max-width:400px}.closing h2{font-size:2.55rem}.closing-copy>p:not(.eyebrow){font-size:.95rem;max-width:310px}.closing .scene-image{object-position:61% 55%}.closing::after{background:linear-gradient(90deg,#010d18d4,#01142199 55%,#01132120),linear-gradient(0deg,#011321bb,transparent 80%)}.closing-words{grid-template-columns:repeat(4,1fr);gap:11px;margin:48px 0 0}.closing-words li{flex-direction:column;gap:8px;font-size:.57rem;text-align:center;letter-spacing:.07em}.closing-words .benefit-icon{width:35px;height:35px}.closing-words .benefit-icon svg{width:21px;height:21px}.site-footer{padding-top:43px}.footer-main{grid-template-columns:.6fr 1.4fr;gap:34px 24px;padding-bottom:28px}.footer-brand{grid-column:1/-1}.footer-brand .brand{margin:0}.footer-heading{font-size:.86rem;margin-bottom:17px}.footer-links{font-size:.88rem;gap:9px}.contact-lines a,.contact-lines>span{font-size:.78rem;gap:8px}.contact-lines .icon{width:17px;height:17px}.footer-social{grid-column:1/-1;display:flex;gap:22px}.payment-strip{flex-wrap:wrap;gap:16px;padding:22px 0}.payment-label{font-size:.74rem}.footer-bottom{flex-direction:column;align-items:flex-start;font-size:.7rem;gap:17px;padding-bottom:25px}.legal-links{gap:12px}.legal-links button+button::before{margin-right:12px}.back-top{display:none}.info-dialog{padding:36px 25px 30px}.info-dialog h2{font-size:1.8rem}.dialog-body{font-size:.92rem}.header-inner{gap:7px}.header-inner>.lang-switch{padding:2px}.header-inner>.lang-switch .lang-globe{display:none}.header-inner>.lang-switch button{min-width:26px;padding:7px 5px;font-size:.63rem}.header-cta{padding:10px 13px;font-size:.7rem}.legal-toc ol{grid-template-columns:1fr}.legal-body{font-size:.96rem}.consult-dialog{width:100%;max-width:100%;max-height:92vh;border-radius:20px 20px 0 0;margin:auto auto 0;border-bottom:0}#consult-pane,.consult-success{max-height:92vh;padding:26px 20px 30px}.phone-row{grid-template-columns:minmax(0,.95fr) minmax(0,1.3fr)}.callback-grid{grid-template-columns:1fr}.page-hero{min-height:auto}.page-hero-inner{padding-top:calc(var(--header) + 54px);padding-bottom:64px}.page-hero-copy{max-width:100%}.about-main--single{padding:44px 24px 50px}.expect{padding:64px 0 70px}.svc{padding:56px 0}.svc-points--two{grid-template-columns:1fr;gap:13px}.svc-head{gap:13px;margin-bottom:16px}.svc-orb{width:52px;height:52px}.svc-orb .icon{width:27px;height:27px}.svc h2{max-width:100%}.svc-visual{height:250px}.tm-grid{grid-template-columns:minmax(0,1fr)}.tm-section{padding:58px 0 64px}.tm-empty-actions .button{width:100%}.tm-card::before{font-size:3.6rem;right:14px}.contact-intro{padding-top:calc(var(--header) + 34px)}.contact-form-card,.contact-info{padding:22px 18px 26px;border-radius:16px}.legal-body{font-size:1rem}.legal-body table{font-size:.86rem}.legal-body th,.legal-body td{padding:8px 9px}.verified-tag{font-size:.64rem}}
@media(max-width:380px){.container{width:calc(100% - 32px)}.hero h1{font-size:2.15rem}.brand-mark{width:37px}.brand-name{font-size:1.36rem}.brand-sub{font-size:.4rem}.brand-tag{font-size:.24rem}.header-cta{font-size:.69rem;padding:10px 14px}.menu-toggle{width:38px;height:38px}.header-inner{gap:9px}.hero-actions .button{padding:14px 15px;font-size:.76rem}.trust-features{gap:11px;font-size:.64rem}.service-card{padding:22px 10px 18px}.service-card h3{font-size:1.03rem}.benefits{grid-template-columns:1fr}.benefits li:last-child{grid-column:auto}.footer-main{grid-template-columns:.75fr 1.25fr;gap:30px 15px}.footer-main .contact-lines a{font-size:.72rem}.header-inner>.lang-switch{display:none}.segmented{grid-template-columns:1fr}.phone-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready [data-reveal],.motion-ready [data-reveal="left"]{opacity:1;transform:none}.hero-track{height:auto;min-height:0}.hero{position:relative;min-height:760px;height:auto}.hero-content{opacity:1!important;transform:none!important}.scene-image{transform:none!important;will-change:auto}.hero-signature{opacity:1!important}.steps::before{transform:scaleX(1)}.button:hover,.service-card:hover{transform:none}.consult-dialog[open]{animation:none}.legal-head--animate{animation:none}}
@media print{.site-header{position:relative}.hero-track{height:auto;min-height:0}.hero{position:relative;height:700px}.hero-content,[data-reveal]{opacity:1!important;transform:none!important}.scene-image{transform:none!important}.mobile-nav,.menu-toggle,.reading-progress,.scroll-cue,.carousel-arrow,.carousel-dots,.back-top{display:none}.quote-card{display:block}.scene,.service-card,.quote-card{break-inside:avoid}.info-dialog{display:none}.lang-switch,.mobile-lang{display:none}.legal-toc,.draft-banner{display:none}.legal-layout{grid-template-columns:minmax(0,1fr)}.page-hero::after{display:none}.svc-visual{display:none}.svc-split-inner,.svc-wide-inner{grid-template-columns:1fr}.tm-card{break-inside:avoid}.tm-grid{grid-template-columns:1fr 1fr}.contact-info{position:static}}

/* Public WhatsApp contact and approved client testimonials. */
.apex-whatsapp{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#128c45;color:#fff;box-shadow:0 5px 24px #0006;z-index:45;transition:transform .2s}
.apex-whatsapp svg{width:37px;height:37px}.apex-whatsapp:hover{transform:translateY(-3px);background:#107c3d}.dialog-open .apex-whatsapp{visibility:hidden}
.apex-testimonials{padding-block:70px}.apex-testimonials[hidden],.apex-testimonials button[hidden]{display:none}.apex-testimonials h2{margin-bottom:30px}.apex-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:24px}.apex-review{padding:26px;border:1px solid #ffffff26;border-radius:18px;background:#ffffff06}.apex-review blockquote{margin:0 0 18px;overflow-wrap:anywhere}.apex-review figcaption{color:var(--gold);font-weight:600}
@media(max-width:760px){.apex-review-grid{grid-template-columns:1fr}.apex-whatsapp{width:54px;height:54px;right:16px;bottom:max(16px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.apex-whatsapp{transition:none}}

/* What you will learn (education topics; no testimonials). */
.learn{padding:85px 0 80px;background:radial-gradient(ellipse at 80% 0%,#0b37564d,transparent 55%),linear-gradient(160deg,#031421,#051c30)}
.learn-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.learn-card{padding:26px 22px;border:1px solid #c6c7b733;border-radius:17px;background:linear-gradient(150deg,#0d2a3e80,#031421a8);box-shadow:inset 0 1px 0 #ffffff12;transition:transform .35s var(--ease),border-color .35s}
.learn-card:hover{transform:translateY(-4px);border-color:#efbb5b80}
.learn-card h3{font-size:1.08rem;margin:16px 0 8px;color:#fff;letter-spacing:-.01em}
.learn-card p{margin:0;font-size:.95rem;line-height:1.6}
.learn-icon{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#efbb5b1f;color:var(--gold)}
.learn-icon .icon{width:24px;height:24px}
.learn-note{text-align:center;font-size:.82rem;opacity:.75;margin:30px auto 0;max-width:720px}
@media(max-width:1020px){.learn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.learn{padding:60px 0}.learn-grid{grid-template-columns:1fr}}
.apex-review-sub{margin:-18px 0 28px;font-size:.92rem;opacity:.8}.apex-review-stars{color:var(--gold);letter-spacing:2px;font-size:1.05rem;margin-bottom:10px}.apex-review figcaption{display:flex;flex-direction:column;gap:2px}.apex-review-tag{font-size:.78rem;color:var(--muted);font-weight:500}
