:root{--bg:#060607;--bg-soft:#0f1012;--card:#141519;--text:#f5f7fa;--muted:#b6bcc8;--line:rgba(255,255,255,.12);--accent:#cf1f35;--accent-2:#ff6578;--focus-ring:#ffd84d;--focus-ring-shadow:rgba(0,0,0,.75);--interactive-min-size:44px;--success:#cf1f35;--danger:#ff5f6d;--radius:24px;--radius-sm:14px;--radius-md:18px;--radius-lg:24px;--radius-xl:30px;--container:1200px;--header-top-h:44px;--header-main-h:94px;--header-h:calc(var(--header-top-h) + var(--header-main-h));--floating-right:1.2rem;--floating-bottom:1.2rem;--space-2xs:.4rem;--space-xs:.6rem;--space-sm:.9rem;--space-md:1.15rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:clamp(2.35rem,3vw,3rem);--space-3xl:clamp(3rem,5vw,4.5rem);--grid-gap:clamp(1rem,1.4vw,1.4rem);--grid-gap-lg:clamp(1.35rem,1.9vw,2rem);--section-space-y:clamp(4.75rem,7vw,7rem);--section-space-y-mobile:clamp(3.5rem,9vw,4.5rem);--card-padding:clamp(1.3rem,1.8vw,1.85rem);--content-flow-gap:clamp(.9rem,1.3vw,1.2rem);--content-flow-gap-lg:clamp(1.15rem,1.8vw,1.55rem);--font-size-body:clamp(1rem,.22vw + .96rem,1.12rem);--font-size-body-sm:clamp(.92rem,.16vw + .9rem,1rem);--font-size-lead:clamp(1.14rem,.55vw + 1.02rem,1.42rem);--font-size-h1:clamp(2.65rem,5.6vw,5rem);--font-size-h2:clamp(1.95rem,3.25vw,3.05rem);--font-size-h3:clamp(1.26rem,1.05vw + 1rem,1.72rem);--font-size-h4:clamp(1.08rem,.6vw + .98rem,1.32rem);--text-measure:68ch;--text-measure-tight:58ch;--acrylic-smoke-bg:linear-gradient(155deg,rgba(24,30,38,.62),rgba(8,11,16,.48));--acrylic-smoke-soft-bg:linear-gradient(155deg,rgba(24,30,38,.52),rgba(8,11,16,.38));--acrylic-smoke-border:rgba(255,255,255,.2);--acrylic-smoke-shadow:0 16px 34px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.07);--acrylic-smoke-blur:blur(14px) saturate(128%)}
*{box-sizing:border-box}
body,html{margin:0;padding:0;font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#050607;color:var(--text);scroll-behavior:smooth}
html{scroll-padding-top:calc(var(--header-h) + 1rem);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{line-height:1.6;padding-top:var(--header-h)}
[id]{scroll-margin-top:calc(var(--header-h) + 1rem)}
a{color:inherit;text-decoration:none}
.skip-link{position:absolute;top:.75rem;left:.75rem;z-index:4000;background:#fff;color:#101214;border-radius:10px;border:2px solid #101214;padding:.65rem .9rem;font-weight:700;transform:translateY(-180%);transition:transform .15s ease}
.skip-link:focus{transform:translateY(0)}
:where(a,button,input,select,textarea,[role=button]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 2px var(--focus-ring-shadow)}
img{max-width:100%;display:block;height:auto}
img[loading=lazy]{content-visibility:auto}
.container{width:min(var(--container),calc(100% - 2.4rem));margin-inline:auto}
@media (max-width:700px){.container{width:min(var(--container),calc(100% - 40px))}}
.site-header .container{width:min(1380px,calc(100% - 1.6rem))}
.narrow{width:min(760px,100%)}
.page-content{min-height:calc(100vh - var(--header-h))}
.site-header{position:fixed;z-index:1000;top:0;left:0;width:100%;background:linear-gradient(180deg,rgba(8,10,13,.86),rgba(8,10,13,.58));border-bottom:1px solid rgba(255,255,255,.08);transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease;backdrop-filter:blur(18px) saturate(120%)}
.site-header--overlay{background:linear-gradient(180deg,rgba(5,7,10,.7),rgba(5,7,10,.14));border-bottom-color:transparent}
.site-header--overlay.scrolled{background:linear-gradient(180deg,rgba(8,10,13,.94),rgba(8,10,13,.86));border-bottom-color:rgba(255,255,255,.12)}
.header-top{border-bottom:1px solid rgba(255,255,255,.08)}
.header-top-inner{min-height:var(--header-top-h);display:flex;align-items:center;justify-content:flex-end}
.header-top-contact,.header-top-contact-links,.header-top-social-links{display:flex;align-items:center}
.header-top-contact{width:100%;justify-content:flex-end;gap:clamp(1rem,2.3vw,1.8rem)}
.header-top-contact-links{gap:.45rem}
.header-top-phone{display:inline-flex;align-items:center;gap:.38rem;min-height:34px;border-radius:999px;border:0;padding:.2rem .62rem;color:#fff;background:rgba(255,255,255,.06);font-size:.78rem;font-weight:600;line-height:1;letter-spacing:.01em;flex-shrink:0;transition:transform .2s ease,color .2s ease,background .2s ease}
.header-top-phone svg{width:15px;height:15px;fill:currentColor}
.header-top-phone,.header-top-phone span{white-space:nowrap}
.header-top-phone:hover{transform:translateY(-1px);color:#fff;background:rgba(207,31,53,.2)}
.header-inner{min-height:var(--header-main-h);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.2rem}
.logo{display:inline-flex;align-items:center;gap:0;font-size:.98rem;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.logo-image{width:auto;height:65px;filter:brightness(0) invert(1)}
.logo-text{display:none}
.main-nav{display:flex;justify-content:center;gap:.35rem;padding:.2rem;border-radius:999px;background:0 0;overflow-x:auto;scrollbar-width:none}
.main-nav::-webkit-scrollbar{display:none}
.main-nav a,.social-links a{min-height:var(--interactive-min-size)}
.main-nav a{color:rgba(255,255,255,.97);padding:.54rem .82rem;border-radius:999px;border:1px solid transparent;transition:color .2s ease,background .2s ease,opacity .2s ease;font-weight:500;font-size:1rem;white-space:nowrap;line-height:1.15}
.main-nav a:hover{color:#fff;background:0 0;border-color:transparent}
.main-nav a.active{color:var(--text);background:rgba(0,0,0,.58);border-color:rgba(255,255,255,.16)}
@media (min-width:1181px){.main-nav .main-nav-link--mobile-only{display:none}}
.header-tools{display:flex;align-items:center;gap:.45rem}
.header-cta{border:1px solid rgba(255,101,120,.55);border-radius:999px;padding:.5rem .95rem;margin:0;font-size:.82rem;font-weight:700;letter-spacing:.02em;color:#fff3f5;background:linear-gradient(180deg,rgba(207,31,53,.32),rgba(207,31,53,.1));transition:transform .2s ease,background .2s ease,border-color .2s ease;min-height:46px;display:inline-flex;align-items:center;justify-content:center}
.header-cta:hover{transform:translateY(-1px);background:linear-gradient(180deg,rgba(207,31,53,.45),rgba(207,31,53,.2));border-color:rgba(255,101,120,.8)}
.social-links{display:flex;gap:.4rem}
.social-links a{width:auto;height:auto;min-width:var(--interactive-min-size);border-radius:0;display:grid;place-items:center;background:0 0;color:var(--text);transition:transform .2s ease,color .2s ease;border:0}
.social-links a svg{width:18px;height:18px;fill:currentColor;stroke:none}
.social-links a:hover{transform:translateY(-1px);color:rgba(255,101,120,.98)}
.lang-menu{position:relative;min-width:166px}
.lang-menu-trigger{width:100%;border:1px solid var(--line);border-radius:999px;background:linear-gradient(180deg,rgba(18,18,20,.85),rgba(8,8,10,.68));color:var(--text);padding:.5rem .95rem;margin:0;display:flex;align-items:center;gap:.55rem;cursor:pointer;min-height:46px;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.lang-menu-trigger:hover,.lang-menu.open .lang-menu-trigger{border-color:rgba(255,101,120,.65);background:linear-gradient(180deg,rgba(32,33,37,.9),rgba(14,14,16,.72));box-shadow:0 10px 30px rgba(0,0,0,.28)}
.lang-menu-chevron{width:14px;height:14px;margin-left:auto;stroke:currentColor;fill:none;stroke-width:2;transition:transform .22s ease}
.lang-menu.open .lang-menu-chevron{transform:rotate(180deg)}
.lang-current-label{font-size:.82rem;font-weight:600;color:rgba(248,250,255,.92)}
.lang-flag{width:26px;height:18px;border-radius:6px;border:1px solid rgba(255,255,255,.22);overflow:hidden;flex-shrink:0}
.lang-flag img{width:100%;height:100%;object-fit:cover}
.lang-menu-list{margin:0;padding:.45rem;list-style:none;position:absolute;top:calc(100% + .48rem);right:0;min-width:100%;border-radius:14px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(18,20,24,.98),rgba(10,11,14,.97));box-shadow:0 20px 42px rgba(0,0,0,.45);display:grid;gap:.32rem;opacity:0;transform:translateY(-8px) scale(.985);pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:1300}
.lang-menu.open .lang-menu-list{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.lang-menu-item{border-radius:10px;border:1px solid transparent;padding:.42rem .46rem;display:flex;align-items:center;gap:.56rem;color:rgba(241,246,255,.92);font-size:.82rem;font-weight:500;min-height:var(--interactive-min-size);transition:background .18s ease,border-color .18s ease,color .18s ease}
.lang-menu-item.active,.lang-menu-item:focus-visible,.lang-menu-item:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}
.lang-check{margin-left:auto;font-size:.8rem;color:rgba(255,101,120,.92)}
.nav-toggle{display:none;width:47px;height:47px;border:0;background:rgba(255,255,255,.08);border-radius:12px;padding:.5rem;min-width:var(--interactive-min-size);min-height:var(--interactive-min-size);cursor:pointer}
.nav-toggle span{display:block;height:2px;width:100%;background:#fff;margin:5px 0;transition:transform .25s ease,opacity .25s ease}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0)}
.hero{position:relative}
.badge{display:inline-flex;width:fit-content;max-width:100%;align-items:center;justify-self:start;gap:.35rem;padding:.42rem .92rem;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.15);backdrop-filter:blur(12px);color:rgba(255,255,255,.92);font-size:.79rem;text-transform:uppercase;letter-spacing:.12em}
h1{max-width:860px;font-size:var(--font-size-h1);line-height:1.02;letter-spacing:-.04em}
h1,h2,h3,h4{margin:0;text-wrap:balance}
h2{font-size:var(--font-size-h2);line-height:1.06;letter-spacing:-.03em;margin-bottom:var(--space-sm)}
h3{font-size:var(--font-size-h3);line-height:1.16;letter-spacing:-.02em;margin-bottom:var(--space-xs)}
.contact-form legend,h4{font-size:var(--font-size-h4)}
h4{line-height:1.24;letter-spacing:-.01em}
button,input,label,li,p,select,textarea{font-size:var(--font-size-body)}
p{color:rgba(238,242,248,.86);line-height:1.78;max-width:var(--text-measure);margin:0}
h1,p + p{margin-top:var(--space-md)}
.lead{color:#f0f2f8;font-size:var(--font-size-lead);line-height:1.62;max-width:var(--text-measure-tight)}
.content-flow,.section-intro,.section-stack{display:grid}
.section-intro{gap:clamp(.78rem,1.2vw,1.1rem);margin-bottom:var(--space-2xl)}
.content-flow,.section-stack{gap:var(--content-flow-gap)}
.content-flow--lg,.section-stack--lg{gap:var(--content-flow-gap-lg)}
.content-flow>*,.section-intro>*,.section-stack>*{margin:0}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid transparent;padding:.92rem 1.45rem;font-weight:600;letter-spacing:.02em;cursor:pointer;min-height:var(--interactive-min-size);transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(180deg,#cf1f35,#b31227);color:#fff;box-shadow:0 10px 28px rgba(207,31,53,.35)}
.btn-outline{background:rgba(36,43,50,.6);border-color:rgba(255,255,255,.22);color:rgba(245,247,250,.95)}
.section{padding:var(--section-space-y) 0}
.section,.section-dark{content-visibility:auto;contain-intrinsic-size:1px 920px}
.hero-inner{content-visibility:visible;contain-intrinsic-size:auto;padding:clamp(4.1rem,6vw,5.6rem) 0 clamp(2.3rem,3.5vw,3.35rem);border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(20,20,28,.75),rgba(8,8,10,0))}
.hero-inner .container[data-reveal]{display:grid;gap:clamp(.78rem,1.2vw,1.1rem);align-content:start}
.page-contact .section-form{padding-top:calc(var(--section-space-y) - 20px)}
.contact-form-intro-copy{margin-top:var(--space-lg);margin-bottom:var(--space-2xl);display:grid;gap:var(--content-flow-gap)}
.contact-form-intro-copy p{max-width:none}
.contact-form-intro-lead{max-width:34ch;font-size:clamp(1.5rem,.3vw + 1.42rem,1.625rem);line-height:1.38;color:#f0f2f8}
.section-form .contact-form{display:grid;gap:var(--space-lg)}
.contact-form fieldset{margin:0;border:1px solid var(--acrylic-smoke-border);backdrop-filter:var(--acrylic-smoke-blur);-webkit-backdrop-filter:var(--acrylic-smoke-blur);display:grid;background:var(--acrylic-smoke-bg);box-shadow:var(--acrylic-smoke-shadow);border-radius:var(--radius-lg);padding:var(--card-padding);gap:var(--space-md)}
.contact-form legend{padding:0 .4rem;color:#f3f5fb;font-weight:700}
.contact-form .radio-group p,.contact-form label{display:grid;gap:var(--space-xs);color:#dfe4ef}
.contact-form input:not([type=radio]):not([type=checkbox]),.contact-form select,.contact-form textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:#161b22;color:#fff;padding:.82rem .95rem;outline:0;transition:border-color .2s ease,box-shadow .2s ease;min-height:var(--interactive-min-size)}
.contact-form input:not([type=radio]):not([type=checkbox]):focus,.contact-form select:focus,.contact-form textarea:focus{border-color:rgba(207,31,53,.62);box-shadow:0 0 0 3px rgba(207,31,53,.2)}
.radio-group{display:grid;gap:var(--space-sm)}
.radio-group label{display:flex;align-items:center;gap:.5rem;color:var(--muted)}
.radio-group input[type=radio]{min-height:0;margin:0;accent-color:var(--accent)}
.required-note{margin:0;color:#d5dae5;font-size:.9rem}
.phone-split-group{display:grid;grid-template-columns:auto 1fr;gap:.5rem}
.phone-split-code select{width:100%;min-width:5.5rem}
.phone-split-number{flex:1}
.phone-split-group .field-error{border-color:rgba(255,95,109,.7)}
.contact-form-loading{display:flex;flex-direction:column;align-items:center;gap:.72rem;padding:2.5rem 0;text-align:center}
.contact-form-loading[hidden]{display:none}
.contact-form-loading .newsletter-spinner{width:2.6rem;height:2.6rem}
.contact-form-loading-text{margin:0;color:#dfe4ef;font-size:1rem;font-weight:600}
.contact-form-result{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:1.2rem 0;text-align:center}
.contact-form-result[hidden]{display:none}
.captcha-help{display:block;color:rgba(210,218,232,.92);font-size:.92rem;font-weight:600}
.error-summary{border:1px solid rgba(255,95,109,.7);border-radius:14px;padding:.9rem 1rem;background:rgba(255,95,109,.12);color:#ffe8eb}
.error-summary h2{font-size:1rem;margin:0 0 .55rem}
.error-summary ul{margin:0;padding-left:1.1rem;display:grid;gap:.3rem}
.error-summary a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.error-summary a:hover{color:#fff}
.field-error{border-color:#ff8795!important}
.field-error-text{color:#ffd5dc;font-size:.9rem;line-height:1.35}
.field-hint{display:block;color:rgba(210,218,232,.58);font-size:.82rem;line-height:1.4;margin-top:.18rem}
.btn-submit{justify-self:start}
.alert{border-radius:12px;padding:.85rem 1rem;border:1px solid transparent;margin-bottom:1rem}
.alert-success{border-color:rgba(46,204,113,.45);background:rgba(46,204,113,.1);color:#b8ffd8}
.alert-error{border-color:rgba(255,95,109,.45);background:rgba(255,95,109,.1);color:#ffd1d6}
.contact-consent{margin-top:.35rem}
.contact-consent-label{display:grid;grid-template-columns:1.3rem 1fr;gap:.8rem;align-items:start;color:rgba(224,230,240,.94)}
.contact-consent-label input[type=checkbox]{inline-size:1.15rem;block-size:1.15rem;min-height:0;margin:.25rem 0 0;accent-color:var(--accent);align-self:start;justify-self:center;flex-shrink:0}
.contact-consent-label span{display:block;line-height:1.6}
.contact-consent-label a,.newsletter-modal-consent a{text-decoration:underline;text-underline-offset:3px}
.contact-success-block{text-align:center;padding:clamp(2.2rem,4vw,3.8rem) 1rem;display:grid;gap:var(--space-md);justify-items:center}
.contact-success-icon{width:4rem;height:4rem;color:#2ecc71}
.contact-success-block h2{font-size:var(--font-size-h3);margin:0}
.contact-success-block p{max-width:48ch;margin:0;text-align:center}
.contact-success-block .btn{margin-top:var(--space-sm)}
.form-steps-indicator{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:var(--space-lg)}
.step-dot{width:38px;height:38px;border-radius:50%;border:2px solid var(--line);background:var(--bg-soft);color:var(--muted);font-size:.88rem;font-weight:700;display:grid;place-items:center;cursor:default;transition:background .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease;flex-shrink:0}
.step-dot:not(:disabled){cursor:pointer}
.step-dot.active{background:linear-gradient(180deg,#cf1f35,#b31227);border-color:rgba(207,31,53,.65);color:#fff}
.step-dot.current{box-shadow:0 0 0 4px rgba(207,31,53,.28)}
.step-connector{width:clamp(24px,6vw,56px);height:3px;background:var(--line);border-radius:999px;transition:background .25s ease}
.step-connector.active{background:linear-gradient(90deg,#cf1f35,#b31227)}
.form-step-title{font-size:var(--font-size-h4);color:rgba(238,242,248,.86);font-weight:600;margin:0 0 var(--space-md)}
.form-step-title:focus{outline:3px solid var(--focus-ring);outline-offset:6px;border-radius:8px}
.form-step-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-lg)}
.btn-next{background:linear-gradient(180deg,#cf1f35,#b31227);color:#fff;border-color:rgba(179,18,39,.35);box-shadow:0 8px 22px rgba(207,31,53,.3)}
.btn-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px rgba(207,31,53,.38)}
.btn-next:disabled,.btn-next.btn-next-disabled{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.32);box-shadow:none;cursor:not-allowed;transform:none}
.btn-back{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:rgba(245,247,250,.82);box-shadow:none}
.btn-back:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28)}
.draft-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:.72rem 1rem;border-radius:var(--radius-sm);border:1px solid rgba(46,204,113,.35);background:rgba(46,204,113,.1);color:#b8ffd8;font-size:.9rem}
.draft-banner[hidden]{display:none!important}
.draft-banner-clear{border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.35rem .72rem;background:rgba(255,255,255,.08);color:inherit;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s ease}
.draft-banner-clear:hover{background:rgba(255,255,255,.16)}
.form-step-hint{text-align:right;color:rgba(210,218,232,.52);font-size:.82rem;margin-top:.35rem}
.form-step-hint[hidden]{display:none}
.section-contact-directory{padding-top:calc(var(--section-space-y) - 24px);padding-bottom:clamp(1.2rem,2.6vw,2rem)}
.section-contact-channels{padding-top:clamp(1.2rem,2.6vw,2rem);padding-bottom:calc(var(--section-space-y) - 20px)}
.contact-directory-grid,.contact-channels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,1.5vw,1.5rem);align-items:stretch}
.contact-directory-card,.contact-channel-card{min-height:100%;padding:var(--card-padding);border-radius:var(--radius-xl);background:radial-gradient(circle at top right,rgba(207,31,53,.18),transparent 52%),var(--acrylic-smoke-bg)}
.contact-directory-card{display:grid;gap:var(--space-lg)}
.contact-directory-card-header{display:grid;gap:.55rem}
.contact-directory-card-header p,.contact-channel-card p{max-width:none}
.contact-directory-list{display:grid;gap:.8rem;list-style:none;margin:0;padding:0}
.contact-directory-item{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:start;padding:.82rem .95rem;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04)}
.contact-directory-item--compact{align-items:center;padding:.72rem .9rem}
.contact-directory-icon{width:48px;height:48px;min-width:48px;border-radius:16px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);background:rgba(207,31,53,.18);color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.18)}
.contact-directory-icon svg{width:22px;height:22px;fill:currentColor}
.contact-directory-copy{display:grid;gap:.28rem;min-width:0}
.contact-directory-item--compact .contact-directory-copy{gap:.16rem}
.contact-directory-item--compact .contact-directory-icon{width:44px;height:44px;min-width:44px;border-radius:14px}
.contact-directory-label{display:block;color:rgba(220,227,239,.72);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.contact-links-stack{display:grid;gap:.3rem}
.contact-action-link{display:inline-flex;align-items:center;gap:.35rem;color:#fff;font-size:1.02rem;font-weight:700;line-height:1.34;word-break:break-word}
.contact-action-link:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.contact-channel-card{display:grid;gap:var(--space-sm)}
.contact-channel-card .policy-card-body{display:grid;gap:var(--space-sm)}
.contact-channel-card .card-media-title-row,.contact-cta-panel .card-media-title-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-sm)}
.contact-channel-card .card-media-title-row .contact-directory-icon,.contact-cta-panel .card-media-title-row .contact-directory-icon{flex-shrink:0}
.contact-address-lines{display:grid;gap:.08rem;color:rgba(238,242,248,.9);font-size:1rem;line-height:1.5;font-style:normal}
.contact-card-actions{display:flex;flex-wrap:wrap;gap:.72rem;margin-top:0}
.contact-cta-panel .policy-card-body{display:grid;gap:var(--content-flow-gap-lg)}
.contact-cta-panel .policy-actions{display:flex;flex-wrap:wrap;gap:.72rem}
@media (max-width:920px){.contact-directory-grid,.contact-channels-grid{grid-template-columns:1fr}}
@media (max-width:700px){.section-contact-directory{padding-top:calc(var(--section-space-y-mobile) - 20px);padding-bottom:1rem}.section-contact-channels{padding-top:1rem;padding-bottom:calc(var(--section-space-y-mobile) - 14px)}.contact-directory-item{padding:.78rem .85rem}.contact-directory-item--compact{padding:.68rem .82rem}.contact-directory-icon{width:44px;height:44px;min-width:44px}.contact-action-link{font-size:.96rem}.contact-card-actions,.contact-cta-panel .policy-actions{flex-direction:column;align-items:stretch}.contact-card-actions .btn,.contact-cta-panel .btn{width:100%}}
.newsletter-modal{position:fixed;inset:0;z-index:1450;background:rgba(3,4,6,.68);display:grid;place-items:center;padding:1rem;backdrop-filter:blur(4px)}
.newsletter-modal[hidden]{display:none!important}
.newsletter-modal-dialog{width:min(560px,100%);border-radius:26px;background:#fff;color:#0f172a;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.42)}
.newsletter-modal-close{position:absolute;top:.68rem;right:.68rem;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:rgba(3,6,12,.42);color:#fff;font-size:1.2rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.newsletter-modal-hero{min-height:210px;padding:1.2rem 1.25rem 1.05rem;color:#f8fbff;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;gap:.45rem}
.newsletter-modal-hero h2{margin:0;font-size:clamp(1.55rem,3.2vw,2.1rem);line-height:1.12;letter-spacing:-.02em;max-width:18ch}
.newsletter-modal-hero p{margin:0;color:rgba(245,247,252,.92);max-width:44ch;font-size:.93rem}
.newsletter-modal-body{background:#fff;border-top-left-radius:28px;border-top-right-radius:28px;margin-top:-.65rem;padding:1.35rem 1.25rem 1.3rem;display:grid;gap:.72rem}
.newsletter-modal-alert{border-radius:12px;padding:.6rem .72rem;font-size:.87rem;line-height:1.45}
.newsletter-modal-alert--success{border:1px solid rgba(34,197,94,.45);background:rgba(34,197,94,.1);color:#166534}
.newsletter-modal-alert--error{border:1px solid rgba(220,38,38,.35);background:rgba(220,38,38,.08);color:#991b1b}
.newsletter-modal-form{display:grid;gap:.58rem}
.newsletter-modal-field{display:grid;gap:.28rem}
.newsletter-modal-field span{font-size:.79rem;font-weight:600;color:#334155}
.newsletter-captcha-help{display:block;margin-top:.08rem;font-size:.72rem;color:#475569;font-weight:600}
.newsletter-modal-field input{width:100%;min-height:44px;border-radius:10px;border:1px solid rgba(148,163,184,.45);background:#f8fafc;color:#0f172a;padding:.72rem .84rem;outline:0;transition:border-color .2s ease,box-shadow .2s ease}
.newsletter-modal-field input::placeholder{color:#64748b}
.newsletter-modal-field input:focus{border-color:rgba(207,31,53,.58);box-shadow:0 0 0 3px rgba(207,31,53,.16)}
.newsletter-honeypot{position:absolute!important;width:1px;height:1px;margin:-1px;border:0;padding:0;clip:rect(0,0,0,0);overflow:hidden}
.newsletter-modal-consent{display:grid;grid-template-columns:auto 1fr;gap:.56rem;align-items:start;font-size:.8rem;color:#334155}
.newsletter-modal-consent input{margin-top:.18rem}
.newsletter-modal-submit{width:fit-content;min-height:44px;border:1px solid rgba(179,18,39,.35);border-radius:999px;padding:.62rem 1.12rem;color:#fff;background:linear-gradient(180deg,#cf1f35,#b31227);font-size:.79rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.newsletter-modal-submit:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(179,18,39,.35);filter:brightness(1.04)}
.newsletter-modal-note{margin:0;font-size:.8rem;color:#64748b;line-height:1.45}
.newsletter-modal-success-block{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:.6rem 0 .3rem;text-align:center}
.newsletter-success-icon{width:2.4rem;height:2.4rem;color:#166534}
.newsletter-success-text{margin:0;font-weight:600}
.newsletter-modal-loading{display:flex;flex-direction:column;align-items:center;gap:.72rem;padding:1.8rem 0;text-align:center}
.newsletter-modal-loading[hidden],.newsletter-modal-result-js[hidden]{display:none}
.newsletter-spinner{width:2.2rem;height:2.2rem;border:3px solid rgba(207,31,53,.18);border-top-color:#cf1f35;border-radius:50%;animation:wic-spin .7s linear infinite}
@keyframes wic-spin{to{transform:rotate(360deg)}}
.newsletter-loading-text{margin:0;color:#475569;font-size:.88rem;font-weight:600}
.newsletter-modal-result,.newsletter-modal-result-js{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:1.2rem 0 .5rem;text-align:center}
.newsletter-result-icon{width:2.6rem;height:2.6rem}
.newsletter-result-icon--success{color:#166534}
.newsletter-result-icon--error{color:#991b1b}
.newsletter-result-title{margin:0;font-size:1rem;font-weight:700;color:#0f172a}
.newsletter-result-text{margin:0;color:#475569;font-size:.88rem;line-height:1.5}
.newsletter-retry-btn{margin-top:.4rem}
body.newsletter-modal-open{overflow:hidden}
.floating-actions{position:fixed;right:var(--floating-right);bottom:calc(env(safe-area-inset-bottom) + var(--floating-bottom));display:flex;flex-direction:column;align-items:flex-end;gap:.68rem;z-index:1245}
.back-to-top,.floating-whatsapp{border-radius:999px;color:#fff;display:grid;place-items:center}
.floating-whatsapp{width:56px;height:56px;background:linear-gradient(180deg,#2fd86b,#20b357);box-shadow:0 14px 28px rgba(18,139,63,.32);border:1px solid rgba(255,255,255,.2);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.back-to-top svg,.floating-whatsapp svg{width:26px;height:26px;fill:currentColor}
.floating-whatsapp:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(18,139,63,.36);filter:saturate(1.06)}
.back-to-top{position:relative;width:52px;height:52px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(180deg,rgba(18,20,24,.95),rgba(8,10,13,.92));cursor:pointer;touch-action:manipulation;box-shadow:0 16px 34px rgba(0,0,0,.35);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{box-shadow:0 20px 38px rgba(0,0,0,.42)}
.back-to-top svg{width:20px;height:20px}
body.cookie-banner-visible .floating-actions{bottom:clamp(7rem,18vh,10rem)}
.site-footer{margin-top:2.8rem;border-top:1px solid rgba(255,255,255,.22);background:linear-gradient(180deg,#be142c 0,#a10f24 45%,#8b0d1f 100%);color:#fff;padding:clamp(2.8rem,4vw,4.2rem) 0 1.5rem}
.footer-main{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:2.4rem 3.2rem;padding-bottom:2.85rem;border-bottom:1px solid rgba(255,255,255,.24)}
.footer-col{min-width:0}
.footer-brand{display:inline-flex;align-items:center;max-width:100%}
.footer-brand-logo{height:150px;width:auto;max-width:min(100%,680px);filter:brightness(0) invert(1)}
.footer-col--left{display:grid;gap:1.45rem;align-content:start;justify-items:center;text-align:center}
.footer-col--left .footer-brand{justify-content:center}
.footer-event-date{display:inline-block;padding:.35rem .9rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:var(--font-size-body-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.88)}
.footer-social-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.68rem;justify-content:center}
.footer-social-links{display:flex;flex-wrap:wrap;gap:.6rem}
.footer-social-link{width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.38);display:grid;place-items:center;color:rgba(255,255,255,.95);background:rgba(255,255,255,.08);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.footer-social-link svg{width:18px;height:18px;fill:currentColor}
.footer-social-link:hover{transform:translateY(-1px);background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.82)}
.footer-social-cta{display:inline-flex;align-items:center;justify-content:center;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.45);padding:0 1rem;color:#7f0f1d;background:#fff;font-weight:700;letter-spacing:.02em;text-transform:uppercase;font-size:.76rem;transition:transform .2s ease,box-shadow .2s ease}
.footer-social-cta:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.22)}
.footer-address{margin:.2rem 0 0;font-style:normal;max-width:44ch;line-height:1.55;color:rgba(255,255,255,.94);font-size:.95rem}
.footer-address-link{color:inherit;text-decoration:none;display:inline-flex;align-items:flex-start;gap:.62rem;padding:0;border:0;background:0 0;transition:color .2s ease}
.footer-address-link:hover{color:#fff}
.footer-address-icon{width:22px;height:22px;min-width:22px;color:#fff}
.footer-address-icon svg{width:100%;height:100%;fill:currentColor}
.footer-address-text{display:grid;gap:.1rem;text-align:left}
.footer-address-text span{color:rgba(255,255,255,.95);line-height:1.45}
.footer-col--right{display:grid;gap:1rem}
.footer-nav-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:1.1rem 2rem}
.footer-nav-group{display:grid;gap:.5rem}
.footer-nav-main{color:#fff;font-weight:700;letter-spacing:.01em;text-transform:none}
.footer-nav-main:hover,.footer-nav-sub a:hover{text-decoration:underline;text-underline-offset:3px}
.footer-nav-sub{margin:0;padding:0;list-style:none;display:grid;gap:.33rem}
.footer-nav-sub a{color:rgba(255,246,247,.86);font-size:.92rem;line-height:1.35;text-transform:none}
.footer-nav-sub a:hover{color:#fff}
.footer-bottom{padding-top:50px;padding-bottom:50px;display:grid;gap:1.35rem}
.footer-bottom-bottom,.footer-bottom-top{width:100%;display:flex;justify-content:center}
.footer-bottom-left{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.62rem}
.footer-mini-contact,.footer-phone-link{border:1px solid rgba(255,255,255,.42);color:rgba(255,255,255,.95);background:rgba(255,255,255,.08);transition:transform .2s ease,background .2s ease}
.footer-mini-contact{width:44px;height:44px;border-radius:999px;display:grid;place-items:center}
.footer-mini-contact svg{width:17px;height:17px;fill:currentColor}
.footer-mini-contact:hover,.footer-phone-link:hover{transform:translateY(-1px);background:rgba(255,255,255,.18)}
.footer-phone-link{display:inline-flex;align-items:center;border-radius:999px;gap:.4rem;min-height:44px;padding:0 .78rem;font-size:.8rem;font-weight:700;line-height:1;letter-spacing:.01em;white-space:nowrap}
.footer-language-switcher svg,.footer-phone-link svg{width:16px;height:16px;fill:currentColor}
.footer-language-switcher,.footer-language-switcher a{display:inline-flex;align-items:center;border-radius:999px}
.footer-language-switcher{gap:.35rem;min-height:44px;border:1px solid rgba(255,255,255,.38);padding:0 .45rem;background:rgba(255,255,255,.08)}
.footer-language-switcher svg{color:rgba(255,255,255,.92)}
.footer-language-switcher a{justify-content:center;min-height:32px;color:rgba(255,255,255,.92);font-size:.75rem;font-weight:700;padding:0 .5rem;line-height:1;transition:color .2s ease,background .2s ease}
.footer-language-switcher a.active,.footer-language-switcher a:hover{background:#fff;color:#7f0f1d}
.footer-bottom-right{margin-left:0;text-align:center;display:grid;justify-items:center;gap:.45rem}
.footer-legal{margin:0;color:rgba(255,255,255,.96);font-weight:600;letter-spacing:.01em;font-size:.94rem}
.footer-legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem .9rem}
.footer-legal-links a{color:rgba(255,255,255,.9);font-size:.88rem;text-decoration:underline;text-underline-offset:3px}
.footer-legal-links a:hover{color:#fff}
.cookie-banner{position:fixed;right:1rem;left:auto;width:min(660px,calc(100vw - 2rem));bottom:1rem;z-index:1200;border-radius:20px;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at top right,rgba(207,31,53,.16),transparent 42%),linear-gradient(180deg,rgba(14,14,18,.97),rgba(8,8,12,.96));backdrop-filter:blur(14px) saturate(120%);box-shadow:0 24px 50px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.05) inset;padding:1rem 1.1rem;display:grid;gap:.9rem}
.cookie-banner[hidden],.cookie-preferences[hidden]{display:none!important}
.cookie-banner p{margin:0;color:#d8deea;font-size:.93rem}
.cookie-banner-main{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}
.cookie-manage{border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:.46rem .68rem;background:rgba(255,255,255,.06);color:#f5f7fa;cursor:pointer;font-weight:600;min-height:var(--interactive-min-size)}
.cookie-actions,.cookie-preferences{display:flex;flex-wrap:wrap;gap:.7rem 1rem}
.cookie-preferences label{display:inline-flex;align-items:center;gap:.45rem;color:#d8deea;font-size:.88rem}
.cookie-actions{gap:.55rem;justify-content:flex-end}
.cookie-btn{border:1px solid transparent;border-radius:10px;padding:.56rem .88rem;font-weight:700;cursor:pointer;min-height:var(--interactive-min-size);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.cookie-btn:hover{transform:translateY(-1px)}
.cookie-btn--primary{background:linear-gradient(180deg,#cf1f35,#b31227);color:#fff}
.cookie-btn--ghost{background:rgba(255,255,255,.08);color:#f5f7fa;border:1px solid rgba(255,255,255,.18)}
[data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}
[data-reveal].reveal-visible{opacity:1;transform:translateY(0)}
@media (max-width:1024px){.footer-main{grid-template-columns:1fr}.footer-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom-right{margin-left:0;text-align:center}.footer-legal-links{justify-content:center}}
@media (max-width:1180px){.header-cta,.lang-current-label{display:none}.lang-menu{min-width:66px}.lang-menu-trigger{min-width:66px;padding-inline:.44rem}}
@media (max-width:860px){.header-top-inner{min-height:44px}.header-top-contact{gap:.85rem}.header-top-contact-links{gap:.3rem}.header-top-phone{min-height:var(--interactive-min-size);padding:.2rem .65rem;font-size:.76rem;background:0 0;border:0}.header-top-phone:hover{background:0 0}.header-inner{grid-template-columns:auto auto 1fr;gap:.8rem}.nav-toggle{display:block}.main-nav{position:absolute;top:calc(var(--header-h) + .3rem);left:1rem;right:1rem;border:1px solid rgba(15,23,42,.12);border-radius:18px;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);padding:.45rem;display:none;flex-direction:column;align-items:flex-start;gap:.35rem}.main-nav a{color:#0f172a;width:100%}.main-nav a.active{color:#0f172a;background:rgba(17,24,39,.08);border-color:rgba(17,24,39,.16)}.main-nav.open{display:flex}.header-tools{justify-content:flex-end}.header-top .social-links{gap:.3rem}.header-top .social-links a{width:var(--interactive-min-size);height:var(--interactive-min-size);min-width:var(--interactive-min-size);min-height:var(--interactive-min-size);border-radius:50%;background:0 0;border:0}.header-top .social-links a:hover{background:0 0;border-color:transparent}.lang-current-label{display:none}.lang-menu{min-width:66px}.lang-menu-trigger{min-width:66px;padding-inline:.44rem}.lang-menu-list{min-width:188px}.header-cta{display:none}.logo{font-size:.92rem}.logo-image{height:56px}.logo-text{display:none}.floating-actions{right:1rem}}
@media (max-width:700px){.section{padding:var(--section-space-y-mobile) 0}.page-contact .section-form{padding-top:calc(var(--section-space-y-mobile) - 20px)}h1{font-size:clamp(2.2rem,10vw,3.2rem);line-height:1.04}h2{font-size:clamp(1.65rem,6.8vw,2.2rem);line-height:1.1}h3{font-size:clamp(1.1rem,4.8vw,1.35rem);line-height:1.18}.lead,p{line-height:1.7}.cookie-banner{left:1rem;right:1rem;width:auto;gap:.8rem;border-radius:16px}.cookie-banner-main{flex-direction:column;align-items:flex-start}.cookie-actions{display:grid;grid-template-columns:1fr;justify-content:stretch;width:100%}.cookie-btn{flex:1 1 auto;width:100%}.floating-actions{right:.9rem;bottom:calc(env(safe-area-inset-bottom) + .9rem)}body.cookie-banner-visible .floating-actions{bottom:clamp(11rem,34vh,15rem)}.back-to-top,.floating-whatsapp{width:50px;height:50px}.newsletter-modal-dialog{width:min(420px,100%)}.newsletter-modal-hero{min-height:180px;padding:1rem 1rem .92rem}.newsletter-modal-body{padding:1.05rem .9rem 1rem}.newsletter-modal-submit{width:100%}.footer-nav-grid{grid-template-columns:1fr}.footer-bottom-left{align-items:center;justify-content:center}.footer-social-actions{gap:.55rem}.footer-social-cta{padding-inline:.86rem}.footer-brand-logo{height:120px}.footer-address-link{width:100%}.footer-phone-link{font-size:.74rem;padding:0 .64rem}.site-footer{padding-bottom:calc(1.5rem + 30px)}.step-dot{width:32px;height:32px;font-size:.8rem}.step-connector{width:clamp(16px,4vw,32px)}.form-step-actions{flex-wrap:wrap}.btn-next,.btn-back{flex:1 1 auto;min-width:0}}
@media (max-width:420px){.cookie-banner{max-height:calc(100vh - 1.2rem);overflow:auto}.newsletter-modal-dialog{border-radius:20px}}
@media (prefers-reduced-motion:reduce){body,html{scroll-behavior:auto}*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1!important;transform:none!important}}
