/* Suhail IT Support – Homepage styles. Tokens: ./tokens.css (Design System). Mobile first. */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
body{overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--text-link)}a:hover{color:var(--accent-hover)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
strong{font-weight:600;color:var(--text-heading)}
.hl{color:var(--accent);background:linear-gradient(transparent 66%,var(--violet-100) 66%,var(--violet-100) 94%,transparent 94%);background-repeat:no-repeat;background-size:100% 100%;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .04em}
.acard--accent strong,.modes strong,.cta strong{color:#fff}
.cta .hl{color:var(--violet-200);background:none;padding:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--radius-pill);font-size:14px}.skip:focus{top:12px;color:#fff}
.ico{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.wrap{max-width:calc(var(--container) + 2*var(--container-pad));margin:0 auto;padding:0 20px}
@media (min-width:640px){.wrap{padding:0 var(--container-pad)}}
.section{padding:72px 0}
@media (min-width:960px){.section{padding:var(--section-y) 0}}
.section--alt{background:var(--surface-alt)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);font-weight:500;text-transform:uppercase}
.h1{font-size:clamp(36px,7vw,var(--fs-display));line-height:var(--lh-display);letter-spacing:var(--ls-display)}
.h2{font-size:clamp(30px,5vw,var(--fs-h2));line-height:var(--lh-h2);letter-spacing:var(--ls-h2)}
.h3{font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--ls-h4)}
.lead{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);max-width:var(--measure)}
.head{display:grid;gap:16px;margin-bottom:40px;max-width:720px}
.head--center{margin-inline:auto;text-align:center;justify-items:center}
.eyebrow{justify-self:start}.head--center .eyebrow,.cta .eyebrow{justify-self:center}
@media (min-width:960px){.head{margin-bottom:64px}}
.small{font-size:var(--fs-sm);line-height:var(--lh-sm)}
/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 24px;border-radius:var(--radius-pill);border:1px solid transparent;font:500 15px/1 var(--font-sans);letter-spacing:-.005em;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.btn:active{transform:scale(.98)}
.btn .ico{width:18px;height:18px}
.btn .ico--arrow{transition:transform var(--dur-base) var(--ease-out)}.btn:hover .ico--arrow{transform:translateX(2px)}
.btn--lg{height:56px;padding:0 30px;font-size:16px}
.btn--primary{background:var(--accent);color:var(--text-on-accent)}.btn--primary:hover{background:var(--accent-hover);color:#fff;box-shadow:var(--shadow-button)}
.btn--outline{background:var(--white);color:var(--text-heading);border-color:var(--gray-200)}.btn--outline:hover{border-color:var(--text-heading);color:var(--text-heading)}
.btn--white{background:var(--white);color:var(--accent)}.btn--white:hover{background:var(--violet-50);color:var(--accent)}
.btn--dark{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}.btn--dark:hover{border-color:#fff;color:#fff}
.btn--block{width:100%}
@media (max-width:479px){.btn-row .btn{width:100%}}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.tlink{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:15px;color:var(--text-heading);text-decoration:underline;text-decoration-color:var(--gray-300);text-underline-offset:5px}
.tlink:hover{color:var(--accent);text-decoration-color:currentColor}
.tlink .ico{width:18px;height:18px;transition:transform var(--dur-base) var(--ease-out)}.tlink:hover .ico{transform:translateX(2px)}
.icosq{width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}
.badge{justify-self:start;align-self:flex-start;display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:500}
/* Photo tile + floating card */
.tile{position:relative;border-radius:var(--radius-xl);overflow:hidden;background:var(--gray-100)}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.tile--ph{display:grid;place-items:center;background:repeating-linear-gradient(135deg,var(--gray-100) 0 14px,var(--gray-50) 14px 28px)}
.tile--ph span{font:11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--gray-500);background:var(--white);padding:4px 10px;border-radius:6px;max-width:80%;text-align:center}
.cut-tl{clip-path:polygon(var(--cut-lg) 0,100% 0,100% 100%,0 100%,0 var(--cut-lg))}
.cut-br{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut-lg)),calc(100% - var(--cut-lg)) 100%,0 100%)}
.float{position:absolute;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-float);max-width:calc(100% - 24px)}
.float .icosq{width:36px;height:36px;border-radius:10px}.float .ico{width:18px;height:18px}
.float__t{display:block;font-size:12px;line-height:1.3;color:var(--text-muted)}
.float__v{display:block;font-size:15px;font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--text-heading)}
.float__m{display:block;font-size:11px;color:var(--text-muted)}
/* Header */
.hdr{position:relative;z-index:20;background:var(--white)}
.hdr__in{display:flex;align-items:center;gap:16px;height:72px}
@media (min-width:960px){.hdr__in{height:84px}}
.brand{font-weight:600;font-size:18px;letter-spacing:-.02em;color:var(--text-heading);white-space:nowrap}.brand:hover{color:var(--text-heading)}
.nav{display:none}
.nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.nav a{display:block;padding:10px 14px;border-radius:var(--radius-pill);font-size:15px;color:var(--text-strong)}.nav a:hover{color:var(--text-heading);background:var(--gray-50)}
.hdr__cta{margin-left:auto;display:flex;align-items:center;gap:8px}
.hdr__cta .btn{height:44px;padding:0 18px;font-size:14px}
.hdr__wa-label{display:none}
.mnav{position:static}
.mnav>summary{list-style:none;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid var(--gray-200);display:grid;place-items:center;cursor:pointer;color:var(--text-heading)}
.mnav>summary::-webkit-details-marker{display:none}
.mnav .i-close{display:none}.mnav[open] .i-close{display:block}.mnav[open] .i-menu{display:none}
.mnav__panel{position:absolute;left:0;right:0;top:100%;background:var(--white);box-shadow:var(--shadow-float);border-radius:0 0 var(--radius-xl) var(--radius-xl);padding:8px 20px 24px}
.mnav__panel ul{list-style:none;margin:0 0 16px;padding:0}
.mnav__panel li a{display:flex;align-items:center;min-height:52px;font-size:17px;color:var(--text-heading);border-bottom:1px solid var(--divider)}
@media (min-width:480px){.hdr__wa-label{display:inline}}
@media (min-width:1024px){.nav{display:block;margin-left:auto}.hdr__cta{margin-left:8px}.mnav{display:none}}
/* Hero */
.hero{padding:24px 0 72px}
.hero__grid{display:grid;gap:56px;align-items:center}
.hero__copy{display:grid;gap:24px;justify-items:start}
.hero__phone{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--text-body)}
.hero__phone a{color:var(--text-heading);font-weight:500}.hero__phone .ico{width:18px;height:18px;color:var(--accent)}
.hero__media{position:relative;margin:0 4px}
.hero__media .tile{aspect-ratio:4/4.4;max-height:560px;width:100%}
.hero__media .f1{right:-4px;top:28px}.hero__media .f2{left:-4px;bottom:28px}
@media (min-width:960px){.hero{padding:40px 0 104px}.hero__grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gutter)}.hero__copy{grid-column:1/span 6;gap:28px;padding-right:24px}.hero__media{grid-column:8/span 5;margin:0}.hero__media .tile{aspect-ratio:auto;height:600px;max-height:none}.hero__media .f1{right:-32px;top:56px}.hero__media .f2{left:-40px;bottom:56px}}
/* Trust bar + logos */
.trust{background:var(--surface-alt)}
.trust__list{list-style:none;margin:0;padding:32px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}
.trust__list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.4;color:var(--text-heading);font-weight:500}
.trust__list li span{display:block;font-weight:400;color:var(--text-body);font-size:13px}
.trust__list .ico{color:var(--accent);margin-top:1px}
.trust__list a{color:inherit;text-decoration:underline;text-decoration-color:var(--gray-300);text-underline-offset:4px}
@media (min-width:960px){.trust__list{grid-template-columns:repeat(3,minmax(0,1fr));padding:36px 0}}
.logos{background:var(--surface-page);padding:56px 0 24px}
.logos__title{text-align:center;font-size:clamp(30px,5vw,var(--fs-h2));line-height:var(--lh-h2);letter-spacing:var(--ls-h2);padding-bottom:28px;border-bottom:1px solid var(--divider);margin-bottom:32px}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee__track{display:flex;width:max-content;list-style:none;margin:0;padding:0;animation:marquee 50s linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee__track li{flex-shrink:0;height:80px;display:flex;align-items:center;padding-right:72px}
.marquee__track img{height:56px;width:auto}.marquee__track img[src*="zeitraum"]{height:72px}
@media (min-width:960px){.logos{padding:72px 0 32px}.marquee__track li{padding-right:96px}.marquee__track img{height:64px}.marquee__track img[src*="zeitraum"]{height:80px}}
@keyframes marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee{-webkit-mask-image:none;mask-image:none}.marquee__track{width:auto;flex-wrap:wrap;justify-content:center;gap:24px 48px;padding:0 20px}.marquee__track li{padding:0}.marquee__track li[aria-hidden]{display:none}}
.logo-ph{width:140px;height:40px;border-radius:8px;background:var(--gray-50);display:grid;place-items:center;font:11px ui-monospace,monospace;color:var(--gray-500)}
/* Audience */
.aud{display:grid;gap:16px}
@media (min-width:640px){.aud{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gutter)}}
@media (min-width:1100px){.aud{grid-template-columns:repeat(3,minmax(0,1fr))}}
.acard{background:var(--surface-alt);border-radius:var(--radius-lg);padding:28px;display:flex;flex-direction:column;gap:14px}
.acard p{font-size:15px}
.acard ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.acard li{font-size:13px;color:var(--text-strong);background:var(--white);border-radius:var(--radius-pill);padding:4px 12px}
.acard .tlink{margin-top:auto;padding-top:8px;align-self:flex-start}.acard .btn{align-self:flex-start}
.acard--accent{background:var(--surface-accent);color:var(--text-on-accent);box-shadow:0 24px 48px -20px rgba(79,63,240,.55)}
.acard--accent .h3{color:#fff}.acard--accent p{color:rgba(255,255,255,.86)}
.acard--accent .icosq{background:rgba(255,255,255,.14);color:#fff}
.acard--accent .btn{margin-top:auto}
/* Services */
.svc{display:grid;gap:16px}
@media (min-width:640px){.svc{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gutter)}}
@media (min-width:1100px){.svc{grid-template-columns:repeat(4,minmax(0,1fr))}}
.scard{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:28px 24px;display:flex;flex-direction:column;gap:14px;scroll-margin-top:24px}
.scard p{font-size:15px}
.scard ul{list-style:none;margin:auto 0 0;padding:14px 0 0;border-top:1px solid var(--divider);display:grid;gap:6px}
.scard li{display:flex;gap:8px;font-size:13.5px;line-height:1.45;color:var(--text-strong)}
.scard li .ico{width:16px;height:16px;color:var(--positive);margin-top:2px}
.svc__foot{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;background:var(--white);border-radius:var(--radius-xl);padding:24px 28px}
.svc__foot p{color:var(--text-heading);font-size:16px;max-width:52ch}
/* Cases */
.cases{display:grid;gap:16px}
@media (min-width:960px){.cases{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gutter)}}
.case{background:var(--surface-alt);border-radius:var(--radius-xl);padding:28px;display:flex;flex-direction:column;gap:18px}
.case__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;color:var(--text-body)}
.case dl{margin:0;display:grid;gap:14px}
.case dt{font-size:12px;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;font-weight:500;color:var(--text-heading)}
.case dd{margin:4px 0 0;font-size:15px}
.case__res{list-style:none;margin:0;padding:16px 0 0;border-top:1px solid var(--divider);display:grid;gap:6px}
.case__res li{display:flex;gap:8px;font-size:14px;color:var(--text-heading)}
.case__res .ico{width:16px;height:16px;color:var(--positive);margin-top:3px}
.more{margin-top:40px;display:flex;justify-content:center}
/* Videos */
.vids{display:grid;gap:16px}
@media (min-width:960px){.vids{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gutter)}}
.vcard{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden;display:flex;flex-direction:column}
.vplayer{position:relative;aspect-ratio:16/9;background:var(--gray-100)}
.vplayer iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vplay{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:repeating-linear-gradient(135deg,var(--gray-100) 0 14px,var(--gray-50) 14px 28px);display:grid;place-items:center}
.vplay img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vplay__btn{position:relative;width:64px;height:64px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;box-shadow:var(--shadow-button);transition:transform var(--dur-base) var(--ease-out),background var(--dur-base)}
.vplay:hover .vplay__btn{background:var(--accent-hover);transform:scale(1.05)}
.vplay__btn .ico{width:24px;height:24px;fill:currentColor;margin-left:3px}
.vplay__note{position:absolute;left:12px;bottom:12px;font:11px/1.4 ui-monospace,monospace;color:var(--gray-500);background:var(--white);padding:4px 10px;border-radius:6px}
.vcard__body{padding:24px;display:grid;gap:10px}
.vcard__body p{font-size:15px}
.vhint{margin-top:16px;font-size:13px;color:var(--text-muted);text-align:center}
/* Reviews carousel – native scroll-snap, swipe on touch, buttons on desktop, no autoplay */
.rc{margin-top:88px}
.rc__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}
.rc__title{display:flex;align-items:center;gap:16px}
.rc__title>img{width:40px;height:40px;padding:8px;box-sizing:content-box;background:var(--white);border-radius:50%;box-shadow:var(--shadow-card)}
.rc__title .h3{font-size:clamp(22px,3vw,var(--fs-h3));line-height:var(--lh-h3);letter-spacing:var(--ls-h3)}
.rc__nav{display:none;gap:10px}
.rc__btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--gray-200);background:var(--white);color:var(--text-heading);display:grid;place-items:center;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out),opacity var(--dur-base)}
.rc__btn:first-child .ico{transform:rotate(180deg)}
.rc__btn:hover{border-color:var(--text-heading)}
.rc__btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.rc__btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.rc__btn:disabled{opacity:.35;cursor:default}
@media (min-width:700px){.rc__nav{display:flex}}
.rc__track{list-style:none;margin:0 -20px;padding:4px 20px 32px;display:grid;grid-auto-flow:column;grid-auto-columns:86%;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 20px;overscroll-behavior-x:contain;scrollbar-width:none}
.rc__track::-webkit-scrollbar{display:none}
.rc__track:focus-visible{outline-offset:-2px}
@media (min-width:640px){.rc__track{margin:0 calc(-1*var(--container-pad));padding:4px var(--container-pad) 32px;scroll-padding:0 var(--container-pad);grid-auto-columns:calc((100% - 2*var(--container-pad) - var(--grid-gutter))/2);gap:var(--grid-gutter)}}
@media (min-width:1100px){.rc__track{grid-auto-columns:calc((100% - 2*var(--container-pad) - 2*var(--grid-gutter))/3)}}
.rc__item{scroll-snap-align:start;display:flex}
.rev{margin:0;width:100%;background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:28px;display:flex;flex-direction:column;gap:16px}
.rev__top{display:flex;align-items:center;gap:12px}
.rev__av{width:44px;height:44px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:600;font-size:16px;flex-shrink:0}
.rev figcaption{display:grid;gap:1px;min-width:0}
.rev figcaption b{font-weight:500;color:var(--text-heading);font-size:15px;line-height:1.3}
.rev figcaption span{font-size:13px;line-height:1.35}
.rev__g{margin-left:auto;width:24px;height:24px;flex-shrink:0}
.rev__q{font-size:18px;line-height:1.4;letter-spacing:-.01em;color:var(--text-heading);font-weight:500}
.rev__text{margin:0;display:grid;gap:10px;font-size:15px;line-height:1.6;max-height:calc(1.6em * 6 + 10px);overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}
.rev.is-open .rev__text{max-height:none;-webkit-mask-image:none;mask-image:none}
.rev__more{margin-top:auto;align-self:flex-start;background:none;border:0;padding:4px 0;font:500 14px var(--font-sans);color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.rev__more:hover{color:var(--accent-hover)}
.rc__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.rc__dots{flex:1 1 200px;max-width:320px;height:4px;border-radius:4px;background:var(--gray-200);overflow:hidden}
.rc__bar{display:block;height:100%;width:30%;border-radius:4px;background:var(--accent);transition:transform var(--dur-fast) linear}
/* About */
.about{display:grid;gap:48px;align-items:center}
.about__media{position:relative}
.about__media .tile{aspect-ratio:4/4.6;max-height:560px;width:100%}
.about__media .float{right:-4px;bottom:32px}
.about__copy{display:grid;gap:24px}
.pillars{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:20px}
@media (min-width:640px){.pillars{grid-template-columns:1fr 1fr;gap:28px 24px}}
.pillars li{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start}
.pillars h3{font-size:16px;line-height:1.35;font-weight:500;margin-bottom:4px}
.pillars p{font-size:14px;line-height:1.55}
@media (min-width:960px){.about{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gutter)}.about__media{grid-column:1/span 5}.about__media .tile{aspect-ratio:auto;height:600px;max-height:none}.about__media .float{right:-36px}.about__copy{grid-column:7/span 6}}
/* Local */
.local{display:grid;gap:40px;align-items:center}
.local__copy{display:grid;gap:20px}
.areas{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.areas li{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius-pill);background:var(--white);font-size:14px;color:var(--text-heading)}
.areas .ico{width:16px;height:16px;color:var(--accent)}
.modes{background:var(--surface-accent);color:#fff;border-radius:var(--radius-xl);clip-path:polygon(0 0,calc(100% - var(--cut-lg)) 0,100% var(--cut-lg),100% 100%,0 100%);padding:40px 28px;display:grid;gap:28px;position:relative;overflow:hidden}
.modes::before{content:"";position:absolute;right:-180px;bottom:-220px;width:520px;height:520px;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.05),0 0 0 70px rgba(255,255,255,.03),0 0 0 71px rgba(255,255,255,.05),0 0 0 140px rgba(255,255,255,.02),0 0 0 141px rgba(255,255,255,.05);pointer-events:none}
.mode{position:relative;display:grid;grid-template-columns:40px 1fr;gap:16px}
.mode .icosq{background:rgba(255,255,255,.14);color:#fff}
.mode h3{color:#fff;font-size:var(--fs-h4);line-height:var(--lh-h4);margin-bottom:6px}
.mode p{color:rgba(255,255,255,.86);font-size:15px}
.modes hr{position:relative;border:0;height:1px;background:rgba(255,255,255,.18);margin:0}
@media (min-width:960px){.local{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gutter)}.local__copy{grid-column:1/span 6;padding-right:40px}.modes{grid-column:7/span 6;padding:56px 48px}}
/* FAQ */
.faq{display:grid;gap:32px}
@media (min-width:960px){.faq{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gutter)}.faq .head{grid-column:1/span 4;margin:0;align-content:start}.faq__list{grid-column:6/span 7}}
.faq__list{border-top:1px solid var(--divider)}
.qa{border-bottom:1px solid var(--divider)}
.qa summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;cursor:pointer;font-size:17px;line-height:1.4;font-weight:500;color:var(--text-heading)}
.qa summary::-webkit-details-marker{display:none}
.qa summary .ico{transition:transform var(--dur-base) var(--ease-out);color:var(--text-muted)}
.qa[open] summary .ico{transform:rotate(180deg);color:var(--accent)}
.qa summary h3{font:inherit;color:inherit}
.qa__a{padding:0 40px 24px 0;display:grid;gap:10px;font-size:15px;max-width:62ch}
/* CTA */
.cta{background:var(--surface-page);padding-top:24px}
.cta__tab{height:40px;background:var(--navy-900);clip-path:polygon(calc(8% + 40px) 0,calc(92% - 40px) 0,92% 100%,8% 100%)}
.cta__body{background:var(--glow-cta),var(--navy-900);padding:56px 0 96px;text-align:center}
.cta__in{display:grid;justify-items:center;gap:22px}
.cta .eyebrow{background:rgba(255,255,255,.1);color:#fff}
.cta h2{color:var(--text-on-dark);font-size:clamp(30px,5vw,var(--fs-h2));line-height:var(--lh-h2);letter-spacing:var(--ls-h2)}
.cta p{color:var(--text-on-dark-muted);max-width:50ch}
.cta .btn-row{justify-content:center;margin-top:8px}
.cta__note{font-size:13px;color:var(--text-on-dark-muted)}
@media (min-width:960px){.cta__tab{height:48px}.cta__body{padding:72px 0 128px}}
/* Footer */
.ftr{padding:56px 0 28px;background:var(--surface-page)}
.ftr__top{display:grid;gap:28px;padding-bottom:40px;border-bottom:1px solid var(--divider)}
.ftr__brand{display:grid;gap:14px;align-content:start}.ftr__brand p{font-size:15px;line-height:1.6;max-width:44ch}
.ftr__contact{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ftr__contact a{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:16px;background:var(--surface-alt);color:var(--text-heading);font-size:15px;font-weight:500;text-decoration:none;transition:background var(--dur-base) var(--ease-out)}
.ftr__contact a:hover{background:var(--accent-soft);color:var(--text-heading)}
.ftr__contact small{display:block;font-size:12px;font-weight:400;color:var(--text-muted);margin-bottom:2px}
.ftr__ic{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--white);color:var(--accent);flex-shrink:0}
.ftr__grid{display:grid;gap:32px;grid-template-columns:repeat(2,minmax(0,1fr));padding:40px 0}
.ftr h2{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-heading);margin-bottom:16px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ftr li,.ftr li a{font-size:15px;color:var(--text-body)}.ftr__grid li a:hover{color:var(--accent)}
.ftr__note{display:flex;gap:8px;align-items:flex-start;margin-top:6px;font-size:14px!important;color:var(--text-muted)!important}.ftr__note .ico{width:18px;height:18px;color:var(--accent);margin-top:1px}
.ftr__bottom{padding-top:24px;border-top:1px solid var(--divider);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;font-size:14px;color:var(--text-muted)}
.ftr__bottom nav{display:flex;flex-wrap:wrap;gap:8px 20px}.ftr__bottom a,.ftr__bottom .ftr__cookie{color:var(--text-body);text-decoration:none;font-size:14px}.ftr__bottom a:hover,.ftr__bottom .ftr__cookie:hover{color:var(--text-heading);text-decoration:underline}
@media (min-width:720px){.ftr__contact{grid-template-columns:repeat(3,minmax(0,1fr))}.ftr__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:960px){.ftr{padding:80px 0 36px}.ftr__top{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center;gap:var(--grid-gutter)}.ftr__grid{padding:48px 0}}

/* Motion – quiet, ease-out, no bounce. Reveal classes are added by JS only (no-JS = fully visible). */
@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes settle{from{transform:scale(1.08)}to{transform:none}}
@keyframes hlDraw{from{background-size:0 100%}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.hero__copy>*{animation:rise .7s var(--ease-out) both}
.hero__copy>:nth-child(2){animation-delay:.08s}.hero__copy>:nth-child(3){animation-delay:.16s}.hero__copy>:nth-child(4){animation-delay:.24s}.hero__copy>:nth-child(5){animation-delay:.32s}
.hero .hl{animation:hlDraw .9s var(--ease-out) .55s both}
.hero__media .tile img{animation:settle 1.4s var(--ease-out) both}
.hero__media .f1{animation:rise .7s var(--ease-out) .5s both,floaty 7s ease-in-out 1.4s infinite}
.hero__media .f2{animation:rise .7s var(--ease-out) .65s both,floaty 7s ease-in-out 2.4s infinite}
.rv{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-out) var(--d,0ms),transform .6s var(--ease-out) var(--d,0ms)}
.rv.is-in{opacity:1;transform:none}
.rv .hl{background-size:0 100%}
.rv.is-in .hl{background-size:100% 100%;transition:background-size .9s var(--ease-out) calc(var(--d,0ms) + .35s)}
.icosq{transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}
.acard,.scard,.case,.vcard{transition:transform var(--dur-slow) var(--ease-out),box-shadow var(--dur-slow) var(--ease-out),background var(--dur-slow) var(--ease-out)}
@media (hover:hover){
.scard:hover,.vcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-float)}
.acard:not(.acard--accent):hover,.case:hover{transform:translateY(-4px);background:var(--white);box-shadow:var(--shadow-card)}
.acard--accent:hover{transform:translateY(-4px)}
.scard:hover .icosq,.acard:not(.acard--accent):hover .icosq{background:var(--accent);color:#fff}
.vcard:hover .vplay__btn{transform:scale(1.06)}
}

/* Dark hero background – IT-style: navy, fine grid, slow violet glow. Optional real photo via --hero-photo. */
.hdr--dark{background:transparent;z-index:30}
.hdr--dark .brand{color:#fff}
.hdr--dark .nav a{color:rgba(255,255,255,.8)}.hdr--dark .nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.hdr--dark .mnav>summary{border-color:rgba(255,255,255,.25);color:#fff}
.hero--dark{position:relative;isolation:isolate;overflow:hidden;background:var(--navy-900);margin-top:-72px;padding-top:96px;padding-bottom:88px}
.hero--dark::before{content:"";position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(13,16,48,.94) 0%,rgba(13,16,48,.78) 48%,rgba(13,16,48,.55) 100%),var(--hero-photo,none) center/cover no-repeat}
.hero--dark::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px) 0 0/56px 56px,linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px) 0 0/56px 56px;-webkit-mask-image:radial-gradient(ellipse 75% 70% at 70% 40%,#000 25%,transparent 78%);mask-image:radial-gradient(ellipse 75% 70% at 70% 40%,#000 25%,transparent 78%)}
.hero__glow{position:absolute;inset:-15%;z-index:-2;pointer-events:none;background:radial-gradient(38% 34% at 74% 38%,rgba(79,63,240,.5),transparent 70%),radial-gradient(28% 30% at 12% 95%,rgba(106,92,244,.28),transparent 70%);animation:drift 22s ease-in-out infinite alternate}
@keyframes drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-4%,3%,0) scale(1.06)}}
.hero--dark .h1{color:#fff}
.hero--dark .lead{color:var(--text-on-dark-muted)}
.hero--dark strong{color:#fff}
.hero--dark .eyebrow{background:rgba(255,255,255,.1);color:#fff}
.hero--dark .hl{color:var(--violet-200);background-image:linear-gradient(transparent 66%,rgba(79,63,240,.6) 66%,rgba(79,63,240,.6) 94%,transparent 94%)}
.hero--dark .btn--outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}.hero--dark .btn--outline:hover{border-color:#fff;color:#fff}
.hero--dark .hero__phone{color:var(--text-on-dark-muted)}.hero--dark .hero__phone a{color:#fff}.hero--dark .hero__phone .ico{color:var(--violet-200)}
.hero--dark .hero__media .tile{box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
@media (min-width:960px){.hero--dark{margin-top:-84px;padding-top:124px;padding-bottom:120px}}

.hrev{width:100%;max-width:480px;display:grid;gap:12px;padding:18px 20px;border-radius:var(--radius-md);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.hrev__head{display:flex;align-items:center;gap:10px;font-size:14px}.hrev__head img{width:20px;height:20px;background:#fff;border-radius:50%;padding:3px;box-sizing:content-box}
.hrev__stars{display:flex;gap:2px;color:#FBBC04}.hrev__stars .ico{width:15px;height:15px;fill:#FBBC04;stroke:none}
.hrev__head a{color:var(--text-on-dark-muted);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.3)}.hrev__head a:hover{color:#fff}
.hrev__list{list-style:none;margin:0;padding:0;display:grid}
.hrev__item{grid-area:1/1;display:grid;gap:6px;align-content:start;opacity:0;transform:translateY(6px);transition:opacity .42s var(--ease-out),transform .42s var(--ease-out);pointer-events:none}
.hrev__item.is-on{opacity:1;transform:none;pointer-events:auto}
.hrev__q{color:#fff;font-size:16px;line-height:1.45;font-weight:500;letter-spacing:-.005em;text-wrap:pretty}
.hrev__n{font-size:13px;color:var(--text-on-dark-muted)}
.hrev__nav{display:flex;align-items:center;gap:10px}
.hrev__btn{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer;transition:border-color .15s var(--ease-out)}.hrev__btn:hover{border-color:#fff}.hrev__btn .ico{width:16px;height:16px}.hrev__btn[data-d="-1"] .ico{transform:rotate(180deg)}
.hrev__btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.hrev__count{font-size:13px;color:var(--text-on-dark-muted);font-variant-numeric:tabular-nums;min-width:48px;text-align:center}
.hero__copy>:nth-child(6){animation-delay:.4s}
.pains{list-style:none;margin:0;padding:0;display:grid;gap:12px}
@media (min-width:640px){.pains{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (min-width:1000px){.pains{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gutter)}}
.pains li{display:flex;align-items:center;gap:14px;background:var(--white);border-radius:var(--radius-md);padding:18px 20px;font-size:16px;line-height:1.4;font-weight:500;color:var(--text-heading);box-shadow:var(--shadow-card)}
.pains__bridge{margin:48px auto 0;max-width:720px;display:grid;justify-items:center;gap:20px;text-align:center}.pains__bridge p{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg)}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:16px;counter-reset:s}
@media (min-width:860px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gutter)}}
.steps li{position:relative;background:var(--surface-alt);border-radius:var(--radius-lg);padding:32px 28px;display:grid;gap:12px;align-content:start}
.steps li p{font-size:15px}
.steps__n{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:600;font-size:18px;margin-bottom:8px}
.steps__cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:48px}
@media (max-width:479px){.steps__cta .btn{width:100%}}
.proofcta{margin-top:56px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;background:var(--surface-accent);color:rgba(255,255,255,.86);border-radius:var(--radius-lg);padding:28px 32px;box-shadow:0 24px 48px -20px rgba(79,63,240,.55)}
.proofcta p{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);max-width:56ch}.proofcta strong{color:#fff}
.proofcta .btn--primary{background:#fff;color:var(--accent)}.proofcta .btn--primary:hover{background:var(--violet-100);color:var(--accent)}
.cta__assure{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px}
.cta__assure li{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-on-dark-muted)}.cta__assure .ico{width:16px;height:16px;color:var(--violet-200)}
.brand{display:inline-flex;align-items:center;gap:12px}.brand__logo{width:48px;height:48px;border-radius:12px;background:#fff;object-fit:contain;flex-shrink:0}
@media (min-width:960px){.hdr .brand__logo{width:56px;height:56px}}
.ftr .brand__logo{box-shadow:var(--shadow-card)}
.vcard__yt{justify-self:start;font-size:14px;margin-top:4px}
.vcases{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 8px 32px;margin:-8px -8px -24px;outline:none}.vcases::-webkit-scrollbar{display:none}.vcase{scroll-snap-align:center}
.vcase{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:24px;display:grid;gap:28px}
@media (min-width:960px){.vcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;padding:48px;align-items:start}}
.vcase__text{display:grid;gap:20px;align-content:start;justify-items:start}
.vcase__title{font-size:clamp(24px,2.6vw,32px);line-height:1.18;letter-spacing:-.02em;font-weight:500;color:var(--text-heading);text-wrap:balance}
.vcase__blk{display:grid;gap:8px}.vcase__blk p{font-size:16px;line-height:1.65;max-width:56ch}
.vcase__lbl{font-size:12px!important;line-height:1.4!important;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.vcase__side{display:grid;gap:24px}
.vcase__player{border-radius:var(--radius-lg);overflow:hidden}
.vcase__res{display:grid;gap:12px;padding-top:20px;border-top:1px solid var(--divider)}
.vcase__res ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.vcase__res li{display:flex;gap:10px;align-items:flex-start;font-size:16px;font-weight:500;line-height:1.45;color:var(--text-heading)}
.vcase__res .ico{width:20px;height:20px;flex-shrink:0;color:var(--positive);margin-top:1px}
.vc__nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.vc__tabs{display:flex;flex-wrap:wrap;gap:8px}
.vc__tab{height:40px;padding:0 18px;border-radius:var(--radius-pill);border:1px solid var(--divider);background:var(--white);font:500 14px var(--font-sans);color:var(--text-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}
.vc__tab:hover{border-color:var(--text-heading);color:var(--text-heading)}
.vc__tab.is-on{background:var(--accent);border-color:var(--accent);color:#fff}
.vc__tab:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.vc__arrows{display:none;gap:10px}@media (min-width:640px){.vc__arrows{display:flex}}
.vc__arrows .rc__btn[data-dir="-1"] .ico{transform:rotate(180deg)}
.marquee__track img[src*="allianz"]{height:40px}@media (min-width:960px){.marquee__track img[src*="allianz"]{height:46px}}
.agit{margin-top:72px;display:grid;gap:28px;justify-items:center;text-align:center}
.agit__title{font-size:clamp(24px,3vw,34px);line-height:1.18;letter-spacing:-.02em;font-weight:500;color:var(--text-heading);text-wrap:balance}
.agit__list{list-style:none;margin:0;padding:0;display:grid;gap:16px;width:100%;text-align:left}
@media (min-width:860px){.agit__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gutter)}}
.agit__list li{display:grid;gap:8px;align-content:start;padding:24px 0 0;border-top:2px solid var(--text-heading)}
.agit__n{font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--accent)}
.agit__list b{font-size:19px;font-weight:500;letter-spacing:-.01em;color:var(--text-heading)}
.agit__list p{font-size:15px;line-height:1.6}
.sol{margin-top:56px;display:grid;gap:28px;background:var(--surface-accent);color:rgba(255,255,255,.86);border-radius:var(--radius-xl);padding:32px 28px;box-shadow:0 24px 48px -20px rgba(79,63,240,.55);clip-path:polygon(0 0,calc(100% - var(--cut-md)) 0,100% var(--cut-md),100% 100%,0 100%)}
@media (min-width:960px){.sol{grid-template-columns:minmax(0,1.4fr) auto;align-items:center;gap:48px;padding:48px 56px}}
.sol__copy{display:grid;gap:12px}
.sol__lbl{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--violet-200)}
.sol__title{font-size:clamp(24px,3vw,34px);line-height:1.15;letter-spacing:-.02em;font-weight:500;color:#fff;text-wrap:balance}
.sol__copy p{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);max-width:52ch}
.sol__cta{display:grid;gap:14px;justify-items:start}
@media (min-width:960px){.sol__cta{justify-items:center}}
.sol__btn{background:#fff;color:var(--accent)}.sol__btn:hover{background:var(--violet-100);color:var(--accent)}
.sol__link{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:500;color:#fff;text-decoration:underline;text-underline-offset:5px;text-decoration-color:rgba(255,255,255,.4)}.sol__link:hover{color:#fff;text-decoration-color:#fff}.sol__link .ico{width:18px;height:18px}
.hero__phone{flex-wrap:wrap}.hero__sep{opacity:.5;margin:0 4px}
.cta__mail{font-size:15px}.cta__mail a{color:#fff;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(255,255,255,.4)}.cta__mail a:hover{text-decoration-color:#fff}
.qa__a a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.float__logo{width:36px;height:36px;border-radius:10px;object-fit:cover;flex-shrink:0}
.about__media .float--tk{top:32px;bottom:auto;left:-4px;right:auto}
@media (min-width:960px){.about__media .float--tk{left:-36px;top:48px}}

/* Consent banner */
.ck{position:fixed;z-index:200;left:16px;right:16px;bottom:16px;max-width:440px;background:var(--white);border-radius:var(--radius-card,24px);box-shadow:var(--shadow-float);padding:24px;display:grid;gap:14px;max-height:calc(100vh - 32px);overflow:auto}
.ck[hidden]{display:none}
@media (min-width:640px){.ck{left:24px;bottom:24px;right:auto}}
.ck__t{font-size:18px;font-weight:600;color:var(--text-heading);letter-spacing:-.01em}
.ck__p{font-size:14px;line-height:1.6}
.ck__btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ck__btns .btn{padding:0 12px;font-size:14px}
.ck__more summary{cursor:pointer;font-size:14px;font-weight:500;color:var(--text-heading);list-style:none;display:inline-flex;gap:6px}.ck__more summary::-webkit-details-marker{display:none}.ck__more summary::after{content:'+';color:var(--text-muted)}.ck__more[open] summary::after{content:'–'}
.ck__opts{display:grid;gap:10px;margin-top:12px}
.ck__opt{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:16px;background:var(--surface-alt);cursor:pointer}
.ck__opt span{display:grid;gap:2px;font-size:14px}.ck__opt small{font-size:13px;color:var(--text-muted)}
.ck__opt input{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0}
.ftr__cookie,.legal__link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.ftr__cookie:hover{color:var(--text-heading)}.legal__link{color:var(--text-link)}.legal__link:hover{color:var(--accent-hover)}
/* Video consent gate */
.vplay:not(.is-loaded){background:var(--navy-900)}
.vplay:not(.is-loaded)::after{content:'Externes Video · YouTube';position:absolute;left:16px;bottom:14px;font-size:12px;color:rgba(255,255,255,.75);letter-spacing:.01em}
.vplayer{position:relative}
.vgate{position:absolute;inset:0;z-index:2;display:grid;align-content:center;gap:14px;padding:20px;background:var(--navy-900);color:#fff;font-size:14px;line-height:1.55;border-radius:inherit}
.vgate a{color:var(--violet-200)}.vgate__btns{display:flex;flex-wrap:wrap;gap:8px}.vgate .btn{height:40px;padding:0 16px;font-size:14px}
/* Legal pages */
.legal{max-width:760px;background:var(--white);border-radius:24px;box-shadow:var(--shadow-card);padding:clamp(24px,5vw,56px);display:grid;gap:36px}
.legal section{display:grid;gap:12px;scroll-margin-top:24px}
.legal h2{font-size:20px;line-height:1.3;font-weight:600;color:var(--text-heading);letter-spacing:-.01em}
.legal p,.legal li{font-size:16px;line-height:1.7;text-wrap:pretty}
.legal ul{margin:0;padding-left:20px;display:grid;gap:4px}
.legal__stand{font-size:14px;color:var(--text-muted)}
.legal__toc ol{margin:0;padding-left:20px;display:grid;gap:6px;columns:2}.legal__toc li{font-size:15px}

.hrate{display:grid;gap:8px;justify-items:start;color:#fff;text-decoration:none}.hrate:hover{color:#fff}.hrate:hover .hrate__txt{text-decoration:underline;text-underline-offset:3px}
.hrate__stars{display:flex;gap:6px;color:#FBBC04}.hrate__stars .ico{width:22px;height:22px;fill:#FBBC04;stroke:none}
.hrate__txt{font-size:17px;line-height:1.3;color:rgba(255,255,255,.92)}.hrate__txt strong{color:#fff;font-weight:600}

/* Contact form */
.cform{position:relative;width:100%;max-width:640px;margin-top:16px;background:var(--white);color:var(--text-body);border-radius:24px;box-shadow:var(--shadow-float);padding:clamp(22px,4vw,36px);display:grid;gap:20px;text-align:left}
.cform__head{display:grid;gap:4px}.cform h3{font-size:20px;font-weight:600;color:var(--text-heading);letter-spacing:-.01em}.cform__head p{font-size:15px}
.cform__grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.cform__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cform__f--full{grid-column:1/-1}}
.cform__f{display:grid;gap:6px;font-size:14px;font-weight:500;color:var(--text-heading);border:0;margin:0;padding:0;min-width:0}
.cform__f small{font-weight:400;color:var(--text-muted)}
.cform input:not([type=radio]),.cform textarea{width:100%;height:48px;padding:0 18px;border:1px solid var(--gray-200);border-radius:var(--radius-pill);background:var(--white);font:400 15px/1.4 var(--font-sans);color:var(--text-heading);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}
.cform textarea{height:auto;min-height:120px;padding:14px 18px;border-radius:16px;resize:vertical}
.cform input:focus,.cform textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}
.cform__seg legend{margin-bottom:6px}.cform__seg{display:flex;flex-wrap:wrap;gap:8px}
.cform__seg label{position:relative}.cform__seg input{position:absolute;opacity:0;inset:0}
.cform__seg span{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:var(--radius-pill);border:1px solid var(--gray-200);font-weight:400;color:var(--text-strong);cursor:pointer}
.cform__seg input:checked+span{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:500}
.cform__seg input:focus-visible+span{box-shadow:var(--focus-ring)}
.cform__legal{font-size:13px;color:var(--text-muted)}
.cform__err{font-size:14px;color:#B42318}
.cform__hp{position:absolute;left:-9999px}
.cform__ok{position:absolute;inset:0;border-radius:inherit;background:var(--white);display:grid;place-content:center;justify-items:center;gap:10px;text-align:center;padding:32px}.cform__ok[hidden]{display:none}
.cform__ok .ico{width:44px;height:44px;color:var(--accent)}.cform__ok p{font-size:15px}
.cta .cform p{color:var(--text-body)}.cta .cform .cform__legal{color:var(--text-muted)}.cta .cform .cform__err{color:#B42318}.cta .cform a{color:var(--text-link)}.cta .cform h3,.cta .cform strong{color:var(--text-heading)}
.ftr h2 a{color:inherit;text-decoration:none}.ftr h2 a:hover{color:var(--accent)}
