:root{ --bg:#fbfaf7; --bg-warm:#f6f3ee; --dark:#131315; --dark-2:#1a1a1d; --ink:#1c1c1e; --ink-soft:#4c4a47; --muted:#6e6a64; --paper:#ffffff; --brand:#D70E54; --brand-deep:#b30c47; --violet:#5f1aa8; --amber:#ff7a3c; --petrol:#0e6e7a; --line:rgba(28,28,30,.14); --line-light:rgba(255,255,255,.16); --grad:linear-gradient(120deg,#ff4d8c 0%,var(--brand) 55%,#b30c47 100%); --grad-warm:linear-gradient(120deg,var(--amber) 0%,var(--brand) 100%); --r-card:16px; --r-soft:12px; --r-btn:10px; --max:1200px; --gutter:clamp(1.25rem,4vw,3rem); } :root{ --font-display:'Fraunces',Georgia,serif; --font-body:'Inter',system-ui,sans-serif; --disp-weight:340; --disp-tracking:-0.015em; --disp-leading:1.05; } *,*::before,*::after{box-sizing:border-box;margin:0;padding:0} html{scroll-behavior:smooth; background:linear-gradient(var(--paper,#fff) 0 50%,var(--dark,#131315) 50% 100%)} body{ font-family:var(--font-body);font-weight:400; color:var(--ink);background:var(--bg); line-height:var(--lh,1.65);font-size:clamp(1rem,.95rem + .2vw,1.0625rem); -webkit-font-smoothing:antialiased;overflow-x:hidden; } ::selection{background:var(--brand);color:#fff} img,svg{display:block;max-width:100%} body{overflow-x:clip} a{color:var(--brand-deep);text-decoration:none} a:hover{text-decoration:underline;text-underline-offset:3px} :focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px} .wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)} h1,h2,h3,.disp{ font-family:var(--font-display);font-weight:var(--disp-weight); letter-spacing:var(--disp-tracking);line-height:var(--disp-leading); text-wrap:balance; } h1,h2{text-wrap:balance} h1 em,h2 em,.disp em,.gem{ font-style:italic; background:var(--grad); background-size:220% 100%; -webkit-background-clip:text;background-clip:text; -webkit-text-fill-color:transparent;color:transparent; padding-right:.04em; animation:emShift 7.5s ease-in-out infinite alternate; } @keyframes emShift{from{background-position:0% 0}to{background-position:100% 0}} body.a11y-motion :is(h1,h2,.disp) em,body.a11y-motion .gem,body.a11y-motion .footer-claim em{animation:none} @media (prefers-reduced-motion:reduce){h1 em,h2 em,.disp em,.gem,.footer-claim em{animation:none}} h1{font-size:clamp(2.6rem,1.4rem + 5.2vw,6.6rem)} h2{font-size:clamp(1.9rem,1.2rem + 2.8vw,3.6rem)} h1 + p,h2 + p{padding-top:8px} h3{font-size:clamp(1.2rem,1rem + .8vw,1.55rem)} .eyebrow{ display:inline-flex;align-items:center;gap:.7rem; font-size:.78rem;letter-spacing:.16em;text-transform:uppercase; color:var(--muted);font-weight:500; } .eyebrow::before{content:"";width:2rem;height:1px;background:var(--brand)} .lead{font-size:clamp(1.05rem,1rem + .4vw,1.25rem);color:var(--ink-soft);max-width:46ch} .is-dark{color:#f1efec} .is-dark .eyebrow{color:rgba(241,239,236,.55)} .is-dark .lead{color:rgba(241,239,236,.72)} .is-dark a{color:#ff5c93} .btn{ display:inline-flex;align-items:center;gap:.6rem; font-family:var(--font-body);font-weight:500;font-size:.95rem; padding:.95rem 1.8rem;border-radius:var(--r-btn);cursor:pointer; border:1px solid transparent; background:linear-gradient(var(--ink),var(--ink)) padding-box,var(--grad) border-box; color:#fff;transition:transform .25s ease,box-shadow .25s ease,filter .25s ease; } .btn:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 14px 32px -14px rgba(215,14,84,.5)} .btn--brand{ background:var(--brand);border-color:var(--brand); box-shadow:0 10px 26px -12px rgba(215,14,84,.55); } .btn--brand:hover{filter:brightness(1.06)} .btn--paper{background:var(--paper);border:1px solid rgba(28,28,30,.18);color:var(--ink);box-shadow:0 6px 18px -12px rgba(28,28,30,.35)} .btn--paper:hover{border-color:rgba(215,14,84,.45)} .btn-ico{width:24px;height:18px;flex:none} .textlink{display:inline-flex;align-items:center;gap:.6rem;font-weight:500;color:var(--ink)} .textlink::after{ content:"\2192";display:grid;place-items:center;flex-shrink:0; width:1.75em;height:1.75em;border-radius:50%;font-size:.9em; border:1px solid var(--line);color:var(--brand-deep); transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease; } .textlink:hover{text-decoration:none;color:var(--brand-deep)} .textlink:hover::after{background:var(--brand);border-color:var(--brand);color:#fff;transform:translateX(4px)} .is-dark .textlink,.advisory .textlink{color:#f1efec} .is-dark .textlink::after,.advisory .textlink::after{border-color:var(--line-light);color:#ff5c93} .site-head{ position:fixed;inset:0 0 auto 0;z-index:60; display:flex;align-items:center;justify-content:space-between;gap:1.5rem; padding:1rem var(--gutter); transition:background .4s ease,box-shadow .4s ease; } .site-head.scrolled{background:rgba(251,250,247,.85);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)} .logo{color:var(--ink);display:block} html.ey-tr .logo{transition:color .6s ease} .site-head.logo-accent .logo{color:var(--brand)} .logo svg{height:92px;width:auto;aspect-ratio:1667.25/800.98;transition:height .35s ease} .site-head.scrolled .logo svg{height:58px} .logo:hover{text-decoration:none;color:var(--brand)} .main-nav{display:flex;gap:2.2rem} .main-nav a{ font-size:.9rem;font-weight:500;color:var(--ink);position:relative;padding:.3rem 0; } .main-nav a::after{ content:"";position:absolute;left:0;bottom:0;height:1px;width:100%; background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .3s ease; } .main-nav a:hover{text-decoration:none;color:var(--brand-deep)} .main-nav a:hover::after{transform:scaleX(1)} .head-right{display:flex;align-items:center;gap:1rem} .head-cta{font-size:.85rem;font-weight:500;color:#fff;background:var(--brand);border-radius:var(--r-btn);padding:.55rem 1.15rem} .head-cta:hover{text-decoration:none;filter:brightness(1.07)} .head-phone{display:inline-flex;align-items:center;gap:.55rem;font-size:.85rem;font-weight:500;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-btn);padding:.55rem 1.1rem;transition:border-color .25s ease,color .25s ease} .head-phone svg{width:15px;height:15px;flex-shrink:0;color:var(--brand)} .head-phone:hover{text-decoration:none;border-color:var(--brand);color:var(--brand-deep)} @media (max-width:1280px){.head-phone span{display:none}} .burger{display:none;background:none;border:1px solid var(--line);border-radius:var(--r-btn);width:42px;height:42px;cursor:pointer;position:relative;z-index:70} .burger span,.burger span::before,.burger span::after{ content:"";position:absolute;left:10px;right:10px;height:1.5px;background:var(--ink);transition:all .3s ease; } .burger span{top:50%} .burger span::before{top:-7px;left:0;right:0} .burger span::after{top:7px;left:0;right:0} body.nav-open .burger span{background:transparent} body.nav-open .burger span::before{top:0;transform:rotate(45deg);background:#f1efec} body.nav-open .burger span::after{top:0;transform:rotate(-45deg);background:#f1efec} .nav-overlay{ position:fixed;inset:0;z-index:65;background:rgba(19,19,21,.97); display:flex;flex-direction:column;justify-content:center;padding:0 var(--gutter); opacity:0;pointer-events:none;transition:opacity .4s ease; } body.nav-open .nav-overlay{opacity:1;pointer-events:auto} .nav-overlay a{ font-family:var(--font-display);font-size:clamp(2rem,8vw,3.4rem);color:#f1efec; padding:.5rem 0;border-bottom:1px solid var(--line-light); } .nav-overlay a:hover{color:var(--brand);text-decoration:none} .hero{ position:relative;min-height:100svh; display:flex;flex-direction:column;justify-content:center; padding:9rem var(--gutter) 4rem;overflow:hidden; } .hero-inner{max-width:var(--max);margin-inline:auto;width:100%;position:relative;z-index:2} .hero h1{max-width:16ch;margin:1.4rem 0 1.8rem} .hero .lead{margin-bottom:2.4rem} .hero-ctas{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap} .skyline{ position:absolute;inset:auto 0 0 0;height:max(74vh,45vw);min-height:420px;z-index:0;pointer-events:none; } .skyline svg{width:100%;height:100%;object-fit:cover} .sky-back{color:rgba(28,28,30,.055)} .sky-front{color:rgba(28,28,30,.17)} #skyBirds{color:rgba(28,28,30,.17)} #skyClouds{color:rgba(28,28,30,.13)} .sky-accent{color:var(--brand)} .netfx{position:absolute;left:0;right:0;bottom:0;top:auto;width:100%;height:40%;z-index:0;pointer-events:none} .hero-fade{ position:absolute;inset:auto 0 0 0;height:18vh;z-index:1;pointer-events:none; background:linear-gradient(transparent,var(--bg) 85%); } .hero-inner .eyebrow{position:relative} .gull-h1{position:absolute;bottom:calc(100% - 2px);left:0;width:64px;height:48px;color:rgba(28,28,30,.5);pointer-events:none;opacity:0} .gull-h1 svg{width:100%;height:100%;overflow:visible} .gull-fly{position:absolute;top:4%;left:0;width:128px;height:64px;color:rgba(241,239,236,.55);pointer-events:none;z-index:0} .gull-pair{position:absolute;top:10px;left:0;width:200px;height:78px;color:rgba(241,239,236,.55);pointer-events:none;z-index:0} .gull-pair svg{width:100%;height:100%;overflow:visible} .gull-fly svg{width:100%;height:100%;overflow:visible} .gull-ice-wrap{position:absolute;top:-69px;right:2.2rem;width:108px;height:70px;overflow:hidden;pointer-events:none} .gull-abseil{position:absolute;width:84px;height:150px;overflow:hidden;color:rgba(28,28,30,.55);pointer-events:none;z-index:1} .gull-abseil svg{width:100%;height:100%;display:block} .gull-ice{position:absolute;left:0;bottom:-34px;width:108px;height:94px;color:rgba(28,28,30,.5);transform:translateY(76px)} .scroll-hint{ position:absolute;left:50%;bottom:1rem;transform:translateX(-50%); display:flex;flex-direction:column;align-items:center;gap:.5rem; font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);z-index:2; } .scroll-hint::before{content:"";width:1px;height:3rem;background:linear-gradient(transparent,var(--muted))} .trust{margin-top:4rem;display:flex;flex-wrap:wrap;gap:.8rem} .badge{ display:inline-flex;align-items:center;gap:.65rem; padding:.62rem 1.05rem;border-radius:var(--r-btn); font-size:.8rem;font-weight:500;color:var(--ink-soft); background:rgba(255,255,255,.85);border:1px solid var(--line); box-shadow:0 4px 14px -10px rgba(28,28,30,.25);backdrop-filter:blur(3px); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; } .badge:hover{transform:translateY(-2px);box-shadow:0 12px 26px -16px rgba(28,28,30,.3);border-color:rgba(28,28,30,.25)} .badge svg{width:17px;height:17px;flex-shrink:0} .badge-stars svg{width:28px;height:19px} .fbadge-stars svg{width:20px;height:14px} .badge b{font-weight:600;color:var(--ink)} .badge-seal{padding:.42rem 1.05rem .42rem .55rem} .seal{width:40px;height:40px;flex-shrink:0} .seal svg{width:100%;height:100%;overflow:visible} .seal .ring-text{font-family:var(--font-body);font-size:6.1px;font-weight:600;letter-spacing:1.6px;fill:var(--muted)} .seal .core{font-family:var(--font-display);font-size:12.5px;font-weight:600;fill:var(--brand)} .statement{padding:12rem 0 10rem;position:relative} .statement h2{max-width:24ch;margin:1.4rem 0 2.4rem} .statement-cols{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:66rem} .statement-cols p{color:var(--ink-soft)} .trio{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:6.5rem;text-align:center} .trio-line{position:absolute;top:56px;left:10%;right:10%;height:2px;pointer-events:none} .trio-line svg{width:100%;height:100%;overflow:visible} .trio-item{transition:transform .3s ease} .trio-item:hover{transform:translateY(-4px)} .trio-item:hover .medal{box-shadow:0 22px 44px -22px rgba(215,14,84,.6)} .trio-item:hover .medal svg{color:var(--brand)} .medal svg{transition:color .3s ease} .medal{ transition:box-shadow .3s ease; width:112px;height:112px;border-radius:50%;margin:0 auto 1.6rem; display:grid;place-items:center;position:relative;z-index:1; background:linear-gradient(var(--bg-warm),var(--bg-warm)) padding-box,var(--grad) border-box; border:1px solid transparent; box-shadow:0 14px 34px -22px rgba(215,14,84,.45); } .medal svg{width:52px;height:52px;color:var(--ink)} .trio-item .disp{font-size:clamp(1.4rem,1.1rem + 1.2vw,2rem);margin-bottom:.8rem} .trio-item p{color:var(--ink-soft);font-size:.95rem;max-width:34ch;margin-inline:auto} .services{padding:9rem 0 3.5rem;position:relative;overflow:hidden;z-index:2} .cases{z-index:1} .deco{position:absolute;pointer-events:none;color:rgba(28,28,30,.3);z-index:0} .deco--light{color:rgba(241,239,236,.22)} .deco svg{width:100%;height:100%;overflow:visible} .statement,.contact{position:relative;overflow:hidden} .statement>.wrap,.contact>.wrap{position:relative;z-index:1} .services .wrap{position:relative;z-index:1} .main-nav .nav-home{display:inline-flex;align-items:center;padding:.2rem .1rem} .main-nav .nav-home svg{width:17px;height:16px;display:block} .services-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-bottom:3.5rem} @media (min-width:1001px){.services-head h2{max-width:14ch}} .xfade{position:relative;min-width:28ch;text-align:right;padding-bottom:.4rem} .xdots{height:26px;margin-bottom:.5rem} .xdots svg{height:100%;width:auto;margin-left:auto;display:block;overflow:visible} .xtext{position:relative;min-height:1.5em;font-family:var(--font-display);font-size:clamp(1.35rem,1.1rem + 1vw,2rem); color:rgba(28,28,30,.55)} .xtext em{color:rgba(215,14,84,.7)} .xtext span{position:absolute;right:0;top:0;white-space:nowrap} .svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem} .svc{ --acc:var(--brand); position:relative;border-radius:var(--r-card);padding:2.5rem 2.3rem 2.3rem; border:1px solid transparent; background:linear-gradient(var(--paper),var(--paper)) padding-box, linear-gradient(180deg,var(--acc),var(--line) 46%) border-box; transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease; overflow:hidden; } .svc::after{ content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%; background:radial-gradient(circle,color-mix(in srgb,var(--acc) 14%,transparent),transparent 70%); opacity:0;transition:opacity .4s ease; } .svc:hover{transform:translateY(-6px);box-shadow:0 26px 52px -30px rgba(28,28,30,.3);border-color:color-mix(in srgb,var(--acc) 45%,transparent)} .svc:hover::after{opacity:1} .svc[data-acc="violet"]{--acc:#34558f} .svc[data-acc="amber"]{--acc:#ff7a3c} .svc[data-acc="petrol"]{--acc:#0e6e7a} .svc-visual{ height:130px;border-radius:var(--r-soft);margin-bottom:1.6rem;position:relative;overflow:hidden; background:linear-gradient(140deg,color-mix(in srgb,var(--acc) 7%,#fff),color-mix(in srgb,var(--acc) 20%,#fff)); display:grid;place-items:center; } .svc-visual .scene{position:absolute;inset:0;width:100%;height:100%;color:color-mix(in srgb,var(--acc) 52%,var(--ink))} .svb-aa{font-family:var(--font-display);font-size:30px} .svw-badge-t{font:600 12px var(--font-body)} .svs-num{font:600 10px var(--font-body)} .svs-cap{font:500 10.5px var(--font-body);letter-spacing:.08em} .tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.3rem} .tag{ font-size:.72rem;font-weight:500;padding:.3rem .65rem;border-radius:6px; border:1px solid color-mix(in srgb,var(--acc) 35%,transparent); color:color-mix(in srgb,var(--acc) 70%,var(--ink));background:color-mix(in srgb,var(--acc) 5%,#fff); } .svc h3{margin:0 0 .8rem} .svc p{color:var(--ink-soft);font-size:.98rem;margin-bottom:1.4rem} .svc .icon{width:52px;height:52px;color:var(--acc)} .svc a{font-size:.92rem;font-weight:500} .advisory{ margin-top:6rem;border-radius:20px;padding:3.2rem; display:grid;grid-template-columns:1.2fr .8fr;gap:3.5rem;align-items:center; background: linear-gradient(rgba(26,26,29,1),rgba(26,26,29,1)) padding-box, linear-gradient(150deg,rgba(215,14,84,.4),rgba(14,110,122,.28)) border-box; border:1px solid transparent;color:#f1efec;border-radius:26px; box-shadow:0 40px 80px -50px rgba(19,19,21,.6);position:relative;overflow:hidden; } .advisory::before{ content:"";position:absolute;inset:0;pointer-events:none; background:radial-gradient(60% 80% at 82% 30%,rgba(215,14,84,.14),transparent 65%); } .advisory>div{position:relative} .advisory h2{font-size:clamp(1.5rem,1.2rem + 1.4vw,2.2rem);margin-bottom:1.2rem} .advisory p{color:rgba(241,239,236,.72)} .advisory-lead{max-width:52ch} .advisory-points{list-style:none;margin:1.9rem 0 2.1rem;padding:0;display:grid;gap:1.3rem} .advisory-points li{display:grid;grid-template-columns:44px 1fr;gap:1rem;align-items:start} .ap-ic{width:40px;height:40px;color:rgba(241,239,236,.75);display:block;margin-top:.2rem} .ap-ic svg{width:100%;height:100%;overflow:visible} .advisory-points b{display:block;font-family:var(--font-display);font-weight:600;font-size:1.22rem;color:#f1efec;margin-bottom:.15rem;letter-spacing:.01em} .advisory-points li span{color:rgba(241,239,236,.7);font-size:.95rem} .advisory-close{font-family:var(--font-display);font-size:clamp(1.2rem,1.05rem + .7vw,1.6rem);line-height:1.45} .advisory p.advisory-close{color:#f1efec} .advisory .gem{background:linear-gradient(120deg,#ff6d9e,var(--brand));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;white-space:nowrap} @media (max-width:560px){.advisory .gem{white-space:normal}} .advisory-visual{align-self:stretch;min-height:280px;position:relative} .advisory-visual figcaption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:.7rem;color:rgba(241,239,236,.45);letter-spacing:.05em} .advisory-visual svg{position:absolute;inset:0;width:100%;height:100%} .cases{position:relative;overflow:hidden} .cases-head{padding:clamp(7rem,12vh,8.5rem) var(--gutter) 2.5rem;max-width:var(--max);margin-inline:auto} .cases-track{display:flex;gap:2rem;padding:0 var(--gutter) clamp(4.5rem,7vh,5.5rem);width:max-content;align-items:stretch} .case{ width:min(80vw,540px);flex-shrink:0;border-radius:20px;padding:2.4rem 2.3rem; background:linear-gradient(var(--paper),var(--paper)) padding-box, linear-gradient(160deg,rgba(215,14,84,.45),rgba(14,110,122,.3)) border-box; border:1px solid transparent;display:flex;flex-direction:column; } .case-tag{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem} .case-note{margin-top:1.1rem;font-size:.78rem;color:var(--muted);font-style:italic} .case-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin:0 0 1.3rem} .ctag{--tacc:var(--brand);font-size:.62rem;font-weight:500;letter-spacing:.05em;padding:.14rem .5rem;border-radius:99px;border:1px solid color-mix(in srgb,var(--tacc) 40%,transparent);color:color-mix(in srgb,var(--tacc) 85%,var(--ink))} .ctag--brand{--tacc:#D70E54} .ctag--violet{--tacc:#34558f} .ctag--amber{--tacc:#c85a1e} .ctag--petrol{--tacc:#0e6e7a} .ctag--ink{--tacc:#6b6b70} .case-link{margin-top:1.2rem} .case-link a{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;color:var(--brand-deep)} .case-link a svg{transition:transform .25s ease} .case-link a:hover svg{transform:translateX(4px)} .case-link a:hover{text-decoration:none} .case-brand{font-family:var(--font-display);font-size:1.05rem;color:var(--brand-deep);margin-bottom:1.2rem;font-style:italic} .case h3{margin-bottom:1.6rem;max-width:22ch;font-size:clamp(1.15rem,1rem + .6vw,1.4rem)} .case-visual{border-radius:var(--r-soft);height:170px;margin-bottom:.55rem;position:relative;overflow:hidden;border:1px solid var(--line)} .case dl{display:grid;gap:.9rem;font-size:.9rem} .case dt{font-weight:600;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-deep)} .case dd{color:var(--ink-soft)} .case-cta{ justify-content:center;text-align:center;color:#f1efec; background:linear-gradient(var(--dark),var(--dark)) padding-box,var(--grad) border-box; } .case-cta .disp{font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);margin-bottom:1.6rem} .case-note{font-size:.75rem;color:var(--muted);margin-top:1rem} .cv-1{background:linear-gradient(150deg,#faf6f1,#f2e7dc)} .cv-2{background:linear-gradient(150deg,#f4f1fa,#e6def3)} .cv-3{background:linear-gradient(150deg,#f7f4ef,#efe6d8)} .cv-4{background:linear-gradient(150deg,#eef4f3,#dcebe9)} .case-visual svg{position:absolute;inset:0;width:100%;height:100%} .film{padding:0 0 2.5rem} .film-teaser{ display:grid;grid-template-columns:minmax(240px,380px) 1fr;gap:2.6rem;align-items:center; border-radius:20px;padding:1.4rem 2rem 1.4rem 1.4rem; background:linear-gradient(var(--paper),var(--paper)) padding-box, linear-gradient(160deg,rgba(215,14,84,.45),rgba(14,110,122,.3)) border-box; border:1px solid transparent; box-shadow:0 24px 54px -34px rgba(28,28,30,.35); } .film-thumb{ position:relative;border:0;padding:0;cursor:pointer;border-radius:14px;overflow:hidden; aspect-ratio:16/9;background:#131315;display:block; } .film-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease} .film-thumb:hover img{transform:scale(1.04)} .film-play{ position:absolute;left:50%;top:50%;transform:translate(-50%,-50%); width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:#fff; background:rgba(215,14,84,.92);box-shadow:0 16px 40px -14px rgba(215,14,84,.7); transition:transform .25s ease; } .film-play svg{width:22px;height:22px;margin-left:3px} .film-thumb:hover .film-play,.film-thumb:focus-visible .film-play{transform:translate(-50%,-50%) scale(1.1)} .film-thumb:focus-visible{outline:3px solid var(--brand);outline-offset:3px} .film-copy h2{font-size:clamp(1.5rem,1.2rem + 1.3vw,2.2rem);margin:.6rem 0 .8rem;max-width:22ch} .film-copy p{color:var(--ink-soft);max-width:44ch;margin-bottom:1.1rem} .film-copy .textlink{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-weight:500} @media (max-width:760px){.film-teaser{grid-template-columns:1fr;gap:1.4rem}} @media (max-width:760px){ .services-head h2{max-width:none} .services-head{margin-bottom:2rem} .statement{padding:6.5rem 0 5.5rem} .services{padding:5.5rem 0 2.5rem} .quote{padding:6rem 0 3.5rem} .stats{padding:1.2rem 0 4rem} .stats-band{gap:2.2rem 2rem} .cases-head{padding-top:3.5rem} .contact{padding-top:6rem} .tsm-head{margin-bottom:3rem} .tsm-list{gap:4rem} .case{padding:1.8rem 1.5rem} } .film-lightbox{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem)} .film-lightbox[hidden]{display:none} .film-lb-note{position:absolute;inset:auto 0 18%;margin:0 auto;max-width:44ch;text-align:center; color:rgba(241,239,236,.85);font-size:.95rem;line-height:1.6;padding:0 1rem} .film-lb-backdrop{position:absolute;inset:0;background:rgba(12,12,14,.86);backdrop-filter:blur(6px)} .film-lb-inner{position:relative;width:min(1100px,100%);z-index:1} .film-lb-inner video{width:100%;display:block;border-radius:14px;background:#131315;box-shadow:0 60px 120px -50px rgba(0,0,0,.8)} .film-lb-close{ position:absolute;right:0;top:-52px;width:42px;height:42px;border-radius:50%; border:1px solid rgba(255,255,255,.3);background:rgba(19,19,21,.7);color:#f1efec;cursor:pointer; display:grid;place-items:center;transition:border-color .25s ease,transform .25s ease; } .film-lb-close svg{width:18px;height:18px} .film-lb-close:hover{border-color:var(--brand);transform:scale(1.06)} .film-lb-close:focus-visible{outline:3px solid var(--brand);outline-offset:3px} .quote{padding:10rem 0 5rem} .quote-grid{ position:relative;z-index:1; max-width:66rem;margin-inline:auto;padding-inline:var(--gutter); display:grid;grid-template-columns:.75fr 1.5fr;gap:4rem;align-items:center; } .portrait{ position:relative;border-radius:20px;overflow:hidden;aspect-ratio:3/4; background:linear-gradient(160deg,#232327,#1a1a1d 60%,rgba(215,14,84,.25) 140%) padding-box, linear-gradient(160deg,rgba(215,14,84,.55),rgba(255,92,147,.14) 55%,rgba(215,14,84,.42)) border-box; border:1px solid transparent; } .portrait svg{position:absolute;inset:0;width:100%;height:100%} .portrait-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover} .portrait-fade{position:absolute;inset:0;pointer-events:none;background: linear-gradient(180deg,transparent 58%,rgba(19,19,21,.5) 100%), linear-gradient(115deg,rgba(19,19,21,.22),transparent 35%)} .portrait figcaption{ position:absolute;bottom:0;left:0;right:0;padding:1rem 1.2rem; font-size:.72rem;color:rgba(241,239,236,.55);letter-spacing:.05em; } .quote p.qt{ font-family:var(--font-display);font-weight:var(--disp-weight); font-size:clamp(1.5rem,1.1rem + 2.2vw,2.9rem);line-height:1.28; } .quote .word{display:inline-block;margin-right:.28em} .quote-sig{height:64px;margin-top:2.6rem;color:var(--brand)} .quote-sig svg{height:100%;width:auto} .quote footer{margin-top:.9rem;font-size:.9rem;color:rgba(241,239,236,.6);display:flex;align-items:center;gap:1rem} .quote footer::before{content:"";width:3rem;height:1px;background:var(--brand)} .stats{padding:2rem 0 6rem} .stats-band{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:3rem 2rem;align-items:flex-end} .stat{flex:1 1 168px;position:relative} .stat .val{ font-family:var(--font-display);font-size:clamp(3rem,2.2rem + 3.2vw,5.6rem); font-weight:var(--disp-weight);line-height:1;color:var(--ink); position:relative;display:inline-block;padding:1rem 1.4rem; } .stat .val small{font-size:.42em;color:var(--brand)} .stat .scribble{position:absolute;inset:0;pointer-events:none;color:var(--brand);overflow:visible} .stat .scribble svg{width:100%;height:100%;overflow:visible} .stat p{font-size:.88rem;color:rgba(241,239,236,.62);margin-top:.7rem;max-width:26ch} .stats .val{color:var(--ink);transition:color .6s ease} body.bg-dark .stats .val{color:#f1efec} .stat-line{display:block;height:8px;margin-top:1rem;max-width:210px;color:rgba(241,239,236,.28)} .stat-line svg{width:100%;height:100%;overflow:visible} .process{padding:5rem 0 2rem;position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center} .process-intro{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter);margin-bottom:3.5rem;width:100%} .process-intro h2{max-width:18ch;margin-top:1.4rem} .process-orbit{ width:100%; display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:5rem;align-items:center; padding-block:1rem 2rem; } .orbit-visual{position:relative;aspect-ratio:1/1;max-width:420px;width:100%} .orbit-visual svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible} .orbit-marker text{font-family:var(--font-body);font-size:13px;font-weight:600;fill:var(--muted)} .orbit-marker.on text{fill:#fff} .orbit-steps{position:relative;min-height:19rem} .pstep{position:absolute;top:0;left:0;right:0} .pstep .pmeta{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem} .pstep h3{margin-bottom:.9rem;font-size:clamp(1.5rem,1.2rem + 1.3vw,2.2rem)} .pstep p{color:var(--ink-soft);max-width:46ch} .pdots{position:absolute;bottom:0;left:0;display:flex;gap:.5rem;margin:0} .pdots i{width:2.4rem;height:3px;border-radius:2px;background:var(--line);transition:background .3s ease} .pdots i.on{background:var(--brand)} .marquee{position:relative;border-block:1px solid rgba(255,255,255,.08);background:#131315;overflow:visible} .marquee-clip .cta-glow{z-index:0} .marquee-track{position:relative;z-index:1} .marquee-clip{position:relative;z-index:1;overflow:hidden;white-space:nowrap;padding:2.6rem 0} .gull-ride{position:absolute;top:-45px;left:0;width:62px;height:48px;color:rgba(28,28,30,.5);pointer-events:none;opacity:0;z-index:1} .shrimp{position:absolute;top:-25px;left:0;width:29px;height:22px;pointer-events:none;opacity:0;z-index:1} .shrimp svg{width:100%;height:100%;overflow:visible} .gull-ride svg{width:100%;height:100%;overflow:visible} .marquee-track{display:inline-flex;gap:3.5rem;will-change:transform;animation:mq 36s linear infinite} .marquee span{ font-family:var(--font-display);font-size:clamp(1.5rem,1.1rem + 1.8vw,2.4rem); color:rgba(241,239,236,.85);display:inline-flex;align-items:center;gap:3.5rem; } .marquee span::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--brand);flex-shrink:0} @keyframes mq{to{transform:translateX(-50%)}} .tsm{padding:9rem 0 7rem;position:relative;overflow-x:clip} .tsm-head{margin-bottom:3rem} .tsm-head h2,.tsm-head .tsm-sub{max-width:52ch} .tsm-head h2{margin:1.4rem 0 1rem} .tsm-head .tsm-sub{color:var(--ink-soft);font-size:1.05rem} .tsm-head{position:relative} .tsm-nav{display:flex;justify-content:flex-end;gap:.5rem;margin:0 0 9rem} .tsm-arrow{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:none;color:var(--ink);cursor:pointer;transition:border-color .25s ease,color .25s ease,transform .15s ease} .tsm-arrow:hover{border-color:var(--brand);color:var(--brand-deep)} .tsm-arrow:active{transform:scale(.92)} @media (max-width:760px){.tsm-nav{justify-content:flex-start;margin-bottom:7rem}} .tsm-list{display:grid;gap:6rem} .tsm-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;max-width:58rem} .tsm-item.has-portrait{grid-template-columns:200px minmax(0,1fr);align-items:start} .tsm-item:nth-child(even){margin-left:auto} .tsm-mark{position:absolute;top:-5.2rem;left:-1rem;width:96px;height:74px;color:var(--brand);opacity:.85;pointer-events:none} .tsm-item.has-portrait .tsm-mark{left:calc(200px + 1.6rem)} .tsm-quote{font-family:var(--font-display);font-weight:340;font-size:clamp(1.35rem,1.05rem + 1.4vw,2.05rem);line-height:1.42;color:var(--ink);text-wrap:pretty} .tsm-cite{display:flex;align-items:baseline;gap:.7rem;margin-top:1.4rem;font-style:normal} .tsm-cite .tsm-name{font-size:.95rem;font-weight:600;letter-spacing:.02em} .tsm-cite .tsm-city{font-size:.85rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)} .tsm-cite::before{content:"";width:34px;height:1px;background:var(--brand);align-self:center;flex-shrink:0} .tsm-portrait{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 24px 48px -28px rgba(28,28,30,.35)} .tsm-portrait img{display:block;width:100%;height:auto;filter:saturate(.92)} .tsm-portrait::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(28,28,30,.08)} @media (max-width:760px){ .tsm{padding:6rem 0 5rem} .tsm-item.has-portrait{grid-template-columns:1fr} .tsm-item.has-portrait .tsm-portrait{width:150px} .tsm-item.has-portrait .tsm-mark{left:-.4rem} .tsm-item:nth-child(even){margin-left:0} } .contact{padding:10rem 0} .contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;align-items:start} .contact h2{margin:1.4rem 0 1.6rem} .contact-side p{color:var(--ink-soft);margin-bottom:1.6rem;max-width:40ch} .contact-phone{font-family:var(--font-display);font-size:1.5rem;color:var(--ink)} .contact-phone:hover{color:var(--brand-deep);text-decoration:none} .contact-mail{font-size:1.02rem;color:var(--ink-soft)} .contact-mail:hover{color:var(--brand-deep)} .contact-en{display:flex;align-items:flex-start;gap:.6rem;margin-top:1.6rem;font-size:.9rem;color:var(--ink-soft);max-width:34ch} .flag-uk{width:22px;height:14px;flex-shrink:0;margin-top:.22em;border-radius:2px;box-shadow:0 0 0 1px rgba(28,28,30,.12)} .certs{margin-top:1.3rem;padding-top:1.3rem;border-top:1px solid var(--line)} .form .certs{border-top:0;padding-top:.3rem} .certs-cap{font-size:.72rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem;white-space:nowrap} .certs-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center} .certs-row img{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;transition:transform .25s ease} .certs-row img:nth-child(odd){transform:translateY(2px)} .certs-row img:nth-child(even){transform:translateY(-2px)} .certs-row img:hover{transform:translateY(-4px) scale(1.28);box-shadow:0 8px 18px -10px rgba(28,28,30,.4);position:relative;z-index:1} .form{ position:relative;border-radius:20px;padding:2.6rem; background:linear-gradient(var(--paper),var(--paper)) padding-box, linear-gradient(150deg,rgba(215,14,84,.5),rgba(14,110,122,.35)) border-box; border:1px solid transparent; } .field{margin-bottom:1.5rem} .field label{display:block;font-size:.82rem;font-weight:500;letter-spacing:.04em;margin-bottom:.45rem;color:var(--ink)} .field input[type=text],.field input[type=email],.field input[type=tel],.field textarea,.field select{ width:100%;font:inherit;font-size:.95rem;color:var(--ink); border:0;border-bottom:1px solid var(--line);background:transparent; padding:.6rem 2px;transition:border-color .25s ease;border-radius:0; } .field textarea{min-height:110px;resize:vertical} .field input:focus,.field textarea:focus,.field select:focus{outline:none;border-bottom-color:var(--brand)} .field .err{display:none;font-size:.8rem;color:var(--brand-deep);margin-top:.4rem} .field.invalid .err{display:block} .field.invalid input,.field.invalid textarea{border-bottom-color:var(--brand-deep)} .radios{display:flex;gap:1.8rem;flex-wrap:wrap;padding-top:.2rem} .radios label,.check label{display:flex;align-items:center;gap:.6rem;font-size:.92rem;font-weight:400;cursor:pointer;margin:0} .radios input,.check input{accent-color:var(--brand);width:1.05rem;height:1.05rem;flex-shrink:0} .check label{align-items:flex-start;line-height:1.5} .check input{margin-top:.2rem} #fenster-wrap{display:none} #fenster-wrap.show{display:block} .hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden} .form-trust{margin-top:1.6rem;display:flex;flex-wrap:nowrap;gap:.5rem} .form-trust .fbadge{white-space:nowrap;flex:0 1 auto;min-width:0} .form-privacy{margin:.7rem auto .55rem;font-size:.82rem;color:var(--ink-soft);text-align:center} .fbadge{display:inline-flex;align-items:center;gap:.45rem;font-size:.74rem;font-weight:500;color:var(--ink-soft);padding:.38rem .75rem;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.7)} .fbadge svg{width:13px;height:13px;flex-shrink:0} .form-success{display:none;text-align:center;padding:3rem 1rem} .form-success.show{display:block} .form-success .disp{font-size:1.6rem;margin-bottom:.8rem} .fd-gull{width:96px;margin:0 auto .9rem;color:var(--ink)} .fd-gull svg{display:block;width:100%;height:auto;overflow:visible} .fd-gull .fdw{transform-box:fill-box;transform-origin:12% 92%;animation:fdWave 1.05s ease-in-out infinite alternate} @keyframes fdWave{from{transform:rotate(-2deg)}to{transform:rotate(-26deg)}} @media (prefers-reduced-motion:reduce){.fd-gull .fdw{animation:none}} .form.sent form{display:none} .footer{position:relative;padding:6rem 0 2.5rem;overflow:hidden;background:var(--dark)} .footer-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:center;padding-bottom:3.5rem;border-bottom:1px solid var(--line-light)} .footer .logo{color:#f1efec} .footer-copy{font-size:.78rem;color:rgba(241,239,236,.55)} .footer-copy a{color:rgba(241,239,236,.75);text-decoration:underline;text-decoration-color:rgba(241,239,236,.35);text-underline-offset:2px} .footer .logo svg{height:58px;width:auto;aspect-ratio:1667.25/800.98} .footer-claim{font-family:var(--font-display);font-weight:var(--disp-weight);font-size:clamp(1.3rem,1.05rem + 1vw,1.8rem);line-height:1.22;color:rgba(241,239,236,.85);max-width:24ch;margin:1.6rem 0 2.2rem;text-wrap:balance} .footer-claim em{font-style:italic;background:linear-gradient(120deg,#ffd3e2,#ff5c93 30%,#d70e54 58%,#ffb0ca 92%) ; background-size:220% 100%;-webkit-background-clip:text;background-clip:text; -webkit-text-fill-color:transparent;color:transparent;padding-right:.04em; animation:emShift 7.5s ease-in-out infinite alternate} .footer-address{font-style:normal;font-size:.85rem;color:rgba(241,239,236,.55);line-height:1.9} .footer-address a{color:rgba(241,239,236,.8)} .map-visual{position:relative;aspect-ratio:16/8;color:rgba(241,239,236,.55)} .map-visual svg{position:absolute;inset:0;width:100%;height:100%} .map-label{font-family:var(--font-body);font-size:13px;letter-spacing:.06em;fill:rgba(241,239,236,.85)} .map-sub{font-family:var(--font-body);font-size:11px;fill:rgba(241,239,236,.5)} .footer-standorte{display:flex;gap:1.7rem;flex-wrap:wrap;justify-content:center;margin-top:1rem} .footer-standorte a{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;letter-spacing:.01em;color:rgba(241,239,236,.55);text-decoration:none;transition:color .2s ease} .footer-standorte a:hover{color:rgba(241,239,236,.85)} .footer-standorte svg{width:11px;height:14px;flex:none;color:var(--brand)} @media (max-width:760px){.footer-standorte{gap:.5rem 1.7rem}} .footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:2rem;font-size:.8rem;color:rgba(241,239,236,.5)} .footer-bottom a{color:rgba(241,239,236,.75)} .credit .heart{color:var(--brand)} .credit a{color:inherit} .a11y-btn{ position:fixed;left:18px;bottom:18px;z-index:80;width:52px;height:52px;border-radius:50%; color:#fff;border:1px solid transparent;cursor:pointer; background:linear-gradient(var(--ink),var(--ink)) padding-box,var(--grad) border-box; display:grid;place-items:center;box-shadow:0 12px 32px -12px rgba(19,19,21,.55); transition:transform .25s ease; } .a11y-btn:hover{transform:scale(1.07)} .a11y-btn svg{width:26px;height:26px} .a11y-panel{ position:fixed;left:18px;bottom:84px;z-index:80;width:min(350px,calc(100vw - 36px)); max-height:min(560px,calc(100vh - 112px));overflow-y:auto; border-radius:18px;padding:16px 20px 13px; font-size:14px;line-height:1.5; background:linear-gradient(var(--paper),var(--paper)) padding-box, linear-gradient(150deg,rgba(215,14,84,.4),rgba(14,110,122,.28)) border-box; border:1px solid transparent; box-shadow:0 30px 70px -28px rgba(19,19,21,.45);display:none; } .a11y-panel.open{display:block} .a11y-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:9px} .a11y-head h2{font-size:16px;font-family:var(--font-body);font-weight:600;letter-spacing:0;line-height:1.3} .a11y-reset{font-size:11.5px;font-weight:500;color:var(--muted);background:none;border:1px solid var(--line);border-radius:7px;padding:5px 10px;cursor:pointer} .a11y-reset:hover{color:var(--brand-deep);border-color:var(--brand-deep)} .a11y-group{padding:9px 0;border-top:1px solid var(--line)} .a11y-cap{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px} .a11y-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:3px 0;font-size:14px;color:var(--ink)} .a11y-row>label:first-child{cursor:pointer;flex:1} .sw{position:relative;display:inline-block;width:42px;height:23px;flex:0 0 auto;cursor:pointer} .sw input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;z-index:1} .sw i{position:absolute;inset:0;border-radius:999px;background:rgba(28,28,30,.18);transition:background .25s ease;pointer-events:none} .sw i::after{content:"";position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.35);transition:transform .25s ease} .sw input:checked + i{background:var(--brand)} .sw input:checked + i::after{transform:translateX(19px)} .sw input:focus-visible + i{outline:2px solid var(--brand);outline-offset:2px} .a11y-range{display:grid;grid-template-columns:1fr auto;gap:1px 14px;align-items:center;padding:3px 0;font-size:14px} .a11y-range label{grid-column:1 / -1;cursor:pointer} .a11y-range output{font-size:12.5px;font-weight:600;color:var(--brand-deep);min-width:42px;text-align:right} .a11y-range input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:18px;background:transparent;cursor:pointer;margin:0} .a11y-range input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:rgba(28,28,30,.16)} .a11y-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--brand);margin-top:-6px;border:none;box-shadow:0 1px 4px rgba(0,0,0,.25)} .a11y-range input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:rgba(28,28,30,.16)} .a11y-range input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--brand);border:none} .a11y-range input[type=range]:focus-visible{outline:2px solid var(--brand);outline-offset:2px} .a11y-select{width:100%;font-family:var(--font-body);font-size:13px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);margin-top:2px} .a11y-note{font-size:11px;color:var(--muted);margin-top:8px;padding-top:8px;border-top:1px solid var(--line)} body.a11y-contrast{--ink:#000;--ink-soft:#17171a;--muted:#3f3d3a;--line:rgba(0,0,0,.45);--brand-deep:#9c0a3e} body.a11y-contrast .deco{display:none} body.a11y-contrast .sky-front{color:rgba(0,0,0,.3)} body.a11y-gray .netfx{filter:grayscale(1)} body.a11y-contrast .badge{background:#fff} body.a11y-gray :is(.hero,.statement,.services,.film,.quote,.stats,.contact,.marquee,.site-head,.footer,.a11y-btn,.tsm,.nav-overlay,.subhero,.subsec,.model,.mbh,.abgr,.band,.honest,.cta-band,.faq){filter:grayscale(1)} body.a11y-gray .cases>*,body.a11y-gray .process>*{filter:grayscale(1)} body.cb-rg{--brand:#0f62d6;--brand-deep:#0b4da8;--violet:#0e6e7a;--amber:#4f88ff} body.cb-by{--violet:#b3123f;--petrol:#8a1538;--amber:#e8590c} body.a11y-links a{text-decoration:underline;text-underline-offset:3px} body.a11y-motion .marquee-track{animation:none} body{line-height:var(--lh,1.65)} .skip-link{ position:fixed;top:-100px;left:1rem;z-index:100;padding:.7rem 1.2rem;border-radius:var(--r-btn); background:var(--ink);color:#fff;font-size:.85rem;transition:top .2s ease; } .skip-link:focus{top:1rem;text-decoration:none} noscript .js-note{display:block;font-size:.8rem;color:var(--muted);padding:.5rem var(--gutter)} @media (max-width:1000px){ .logo svg{height:54px} .site-head.scrolled .logo svg{height:46px} .main-nav{display:none} .burger{display:block} } @media (max-width:900px){ .statement-cols,.svc-grid,.contact-grid,.advisory,.quote-grid,.footer-grid{grid-template-columns:1fr} .ana-row{grid-template-columns:1fr;gap:.8rem} .ana-row .disp{white-space:normal} .trio{grid-template-columns:1fr;gap:3.5rem} .trio-line{display:none} .process{min-height:0;display:block} .process-orbit{grid-template-columns:1fr;gap:3rem} .orbit-visual{margin-inline:auto} .orbit-steps{min-height:0} .pstep{position:relative;margin-bottom:2.6rem} .pdots{display:none} .portrait{max-width:320px} } @media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} *,*::before,*::after{animation-duration:.001s !important;transition-duration:.001s !important} .marquee-track{animation:none} } .subhero{padding:11.5rem 0 5.5rem;position:relative;overflow:hidden} .subhero h1{font-size:clamp(2.5rem,1.5rem + 4vw,5.2rem);max-width:22ch} .subhero .eyebrow{margin-bottom:1.5rem} .subhero .lead{margin-top:1.9rem;max-width:58ch} .subhero .btn{margin-top:2.4rem} .subhero-line{width:min(260px,42vw);height:26px;margin-top:2.8rem;color:var(--brand)} .subhero-line svg{width:100%;height:100%;overflow:visible} @media (max-width:760px){.subhero{padding:9rem 0 4rem}} .gull-plan{position:absolute;top:14%;left:0;width:150px;height:70px;color:var(--ink);opacity:.8;pointer-events:none;z-index:0;will-change:transform} .cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;max-width:var(--max);margin-inline:auto;padding:1rem var(--gutter) 8rem} .cases-grid .case{width:auto} .case-teaser{color:var(--ink-soft);font-size:.95rem} .cases-grid .case-link{margin-top:auto;padding-top:1.5rem} @media (max-width:900px){.cases-grid{grid-template-columns:1fr}} .cv-5{background:linear-gradient(150deg,#f2f6ee,#e3ecd8)} .cv-6{background:linear-gradient(150deg,#f0f3f7,#dde6f0)} .cv-7{background:linear-gradient(150deg,#f7f1f3,#efdfe6)} .cv-8{background:linear-gradient(150deg,#f1f3f6,#e0e4ec)} .cv-9{background:linear-gradient(150deg,#f8f4ec,#efe4d2)} .subsec{padding:7.5rem 0;position:relative;overflow:hidden} .prose{max-width:62ch;color:var(--ink-soft)} .prose p+p{margin-top:1.15rem} .subsec h2{max-width:24ch;margin-bottom:2rem} .og-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2.5rem,6vw,5.5rem);align-items:center;margin-top:3.2rem} .og-fig{position:relative;min-height:460px} .og-fig svg{position:absolute;inset:0;width:100%;height:100%} @media (max-width:860px){.og-grid{grid-template-columns:1fr}.og-fig{min-height:340px;order:2}} .mbh{position:relative;overflow:hidden} .mbh-head{padding:clamp(7rem,12vh,8.5rem) var(--gutter) 2.5rem;max-width:var(--max);margin-inline:auto;position:relative} .mbh-track{display:flex;gap:2rem;padding:0 var(--gutter) clamp(6.5rem,9vh,7.5rem);width:max-content;align-items:stretch} .mb-card{ width:min(78vw,500px);flex-shrink:0;border-radius:20px;padding:2.4rem 2.2rem; background:var(--paper);border:1px solid var(--line);position:relative; display:flex;flex-direction:column; } .mb-card .num{font-family:var(--font-display);font-style:italic;font-size:2.7rem;color:rgba(215,14,84,.26);line-height:1} .mb-card h3{margin:1rem 0 1rem;font-size:clamp(1.15rem,1rem + .6vw,1.45rem);max-width:28ch} .mb-card p{color:var(--ink-soft);font-size:.95rem} .mb-ico{position:absolute;top:2.2rem;right:2rem;width:72px;height:54px;color:var(--ink);opacity:.85} @media (max-width:560px){.mb-ico{width:58px;height:44px;right:1.4rem}} .mbh-base{position:absolute;left:0;right:0;bottom:1.8rem;height:74px;pointer-events:none} .mbh-baseline{position:absolute;left:var(--gutter);right:var(--gutter);bottom:8px;height:6px; background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 6' preserveAspectRatio='none'><path d='M0 3.4 C22 2.2 44 4.4 66 3.2 C92 1.8 118 4.6 144 3.1 C168 1.9 196 4.2 220 3.3' fill='none' stroke='rgba(28,28,30,0.2)' stroke-width='1.5' stroke-linecap='round'/></svg>") repeat-x;background-size:220px 6px} .gull-walk{position:absolute;bottom:10px;left:var(--gutter);width:64px;height:60px;color:var(--ink);opacity:.9;will-change:transform} @media (max-width:700px){.mbh-base{display:none}} .model{background:var(--dark);padding:8.5rem 0;position:relative;overflow:hidden} .model h2{margin-bottom:3.2rem} .model .prose{color:rgba(241,239,236,.72)} .model-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem;margin-top:5rem} .model-card{border:1px solid var(--line-light);border-radius:var(--r-card);padding:1.9rem 1.7rem;background:rgba(255,255,255,.02);will-change:transform,opacity} .model-card h3{font-size:1.08rem;margin-bottom:.65rem;color:#f1efec} .model-card p{font-size:.93rem;color:rgba(241,239,236,.68)} .mv{width:74px;height:56px;color:rgba(241,239,236,.8);margin-bottom:1.2rem} @media (max-width:900px){.model-cards{grid-template-columns:1fr}} .gull-wheel{position:absolute;right:clamp(1rem,7vw,6rem);bottom:-4px;width:160px;height:128px;color:rgba(241,239,236,.72);pointer-events:none} @media (max-width:700px){.gull-wheel{display:none}} .gpk-band{background:var(--ink);margin-top:3.5rem} .gpk-band-wrap{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.7rem} .gpk-band-txt{margin:0;font-size:1.02rem} .gpk-band-btn{white-space:nowrap} .gpk-band .btn--brand,.kalk-band .btn--brand{color:#fff} .gpk-band-head,.kalk-band-head{margin:0;font-family:var(--font-display);font-weight:var(--disp-weight);font-size:clamp(1.3rem,1.1rem + .8vw,1.7rem);line-height:1.25;white-space:nowrap} .gpk-band-txt,.kalk-band-txt{max-width:44ch} @media (max-width:700px){.gpk-band-head,.kalk-band-head{font-size:1.5rem}} .kalk-band{background:var(--ink);margin-top:3.5rem} .kalk-band-wrap{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.7rem} .gpk-band + .contact,.kalk-band + .contact{padding-top:6.5rem} .kalk-band-txt{margin:0;font-size:1.02rem} .kalk-band-btn{white-space:nowrap} @media (max-width:1024px){ .gpk-band-wrap,.kalk-band-wrap{flex-direction:column;align-items:center;text-align:center;gap:0} .gpk-band-head,.kalk-band-head{white-space:normal;margin-bottom:.5rem} .gpk-band-txt,.kalk-band-txt{max-width:none;margin-bottom:.55rem;line-height:1.45} } .tsm-item{position:relative} .gull-listen{position:absolute;top:-46px;left:20px;width:56px;height:50px;color:var(--ink);opacity:.85;pointer-events:none} .flt{position:relative;padding:8rem 0 1rem;overflow:hidden} .flt-stage{position:relative;height:1300px; margin-top:4.5rem;padding-inline:clamp(1rem,3vw,3.5rem)} @media (min-width:1100px){.flt-stage.is-xl{height:2000px}} @media (max-width:900px){.flt-stage{height:1750px}} .gull-slalom{position:absolute;top:0;left:0;width:112px;height:66px;color:var(--ink);opacity:.8;pointer-events:none;z-index:24;will-change:transform} @media (prefers-reduced-motion: reduce){.gull-slalom{display:none}} .flb{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.4rem} .flb[hidden]{display:none} .flb-back{position:absolute;inset:0;background:rgba(19,19,21,.74);cursor:pointer} .flb-panel{position:relative;background:#fff;border-radius:16px;padding:2rem 2rem 1.4rem; width:min(720px,94vw);max-height:88vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.35);margin:0} .flb-panel svg{display:block;width:100%;height:auto} .flb-panel img{display:block;width:100%;height:auto;border-radius:8px} .flb-cap{margin-top:1rem;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)} .flb-close{position:absolute;top:.7rem;right:.7rem;width:40px;height:40px;border-radius:50%; border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.3rem;line-height:1;cursor:pointer} .flb-close:hover{border-color:#D70E54;color:#D70E54} .flb-close:focus-visible{outline:2px solid #D70E54;outline-offset:2px} .flt-par{position:absolute;will-change:transform} .flt-in{will-change:transform,opacity} .flt-obj{position:relative;display:block;margin:0;background:#fff;border:1px solid var(--line);border-radius:12px; box-shadow:0 10px 28px rgba(28,28,30,.09);padding:.9rem .9rem .7rem;cursor:pointer; transition:box-shadow .35s ease;will-change:transform;outline-offset:4px} .flt-obj:focus-visible{outline:2px solid #D70E54} .flt-obj.is-big{box-shadow:0 26px 64px rgba(28,28,30,.2)} .flt-obj svg{display:block;width:100%;height:auto} .flt-obj img{display:block;width:100%;height:auto;border-radius:6px} .flt-obj video{display:block;width:100%;height:auto;border-radius:6px;background:#f4f4f5} .flt-obj figcaption{margin-top:.6rem;font-size:.62rem;letter-spacing:.06em;line-height:1.5;text-transform:uppercase;color:var(--ink-soft);overflow-wrap:anywhere} .flt-note{font-family:var(--font-display);font-style:italic;color:#D70E54; font-size:clamp(1.15rem,1rem + .9vw,1.55rem);max-width:12ch;line-height:1.3;transform:rotate(-3deg); position:relative;padding:.3em .5em} .flt-note .note-ring{position:absolute;inset:-14% -9%;fill:none;stroke:#D70E54; stroke-width:1.7;stroke-linecap:round;pointer-events:none} @media (prefers-reduced-motion: reduce),(max-width:700px){ .flt-stage{height:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:2.2rem;align-items:start} .flt-par{position:static!important;transform:none!important;width:auto!important} .flt-in{transform:none!important;opacity:1!important} } @media (max-width:700px){ .flt-stage{display:block;columns:2;column-gap:1rem} .flt-par{break-inside:avoid;margin:0 0 1rem} .flt-obj figcaption{font-size:.56rem;margin-top:.4rem} .flt-note{font-size:1.02rem;max-width:none} } .abgr{padding:8.5rem 0 3.5rem;position:relative;overflow:hidden} .abgr h2{max-width:24ch;margin-bottom:2rem} .split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:3.4rem} .split-card{border-radius:var(--r-card);padding:2.3rem 2.1rem;border:1px solid var(--line);background:var(--paper);overflow:hidden} .split-card h3{margin-bottom:.95rem;font-size:clamp(1.15rem,1rem + .6vw,1.4rem)} .split-card p{color:var(--ink-soft);font-size:.96rem} .split-card.is-accent{background:linear-gradient(var(--dark),var(--dark)) padding-box,var(--grad) border-box;border:1px solid transparent;overflow:hidden} .split-card.is-accent h3{color:#f1efec} .split-card.is-accent p{color:rgba(241,239,236,.76)} .split-visual{height:210px;position:relative;margin:0 0 1.7rem} .split-visual svg{position:absolute;inset:0;width:100%;height:100%;display:block} @media (max-width:820px){.split{grid-template-columns:1fr}} .abgr-close{margin:4.6rem auto 0;max-width:36ch;text-align:center; font-family:var(--font-display);font-weight:var(--disp-weight); font-size:clamp(1.2rem,1.05rem + .9vw,1.7rem);line-height:1.55;color:var(--ink)} .abgr-close em{font-style:italic} .abgr-close::before{content:"";display:block;width:44px;height:2px;background:#D70E54;margin:0 auto 1.7rem;border-radius:2px} .tsm-src{margin-top:4rem;font-size:.78rem;color:var(--muted)} .main-nav a[aria-current="page"]{color:var(--brand-deep)} .main-nav a[aria-current="page"]::after{transform:scaleX(1)} .nav-overlay a[aria-current="page"]{color:var(--brand)} .nav-item{position:relative} .nav-drop-btn{ display:inline-flex;align-items:center;gap:.45rem;background:none;border:0;cursor:pointer; font-family:inherit;font-size:.9rem;font-weight:500;color:var(--ink);position:relative;padding:.3rem 0; } .nav-drop-btn::after{ content:"";position:absolute;left:0;bottom:0;height:1px;width:100%; background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .3s ease; } .nav-drop-btn:hover,.nav-drop-btn[aria-expanded="true"]{color:var(--brand-deep)} .nav-drop-btn:hover::after,.nav-drop-btn[aria-expanded="true"]::after{transform:scaleX(1)} .nav-drop-btn.is-section{color:var(--brand-deep)} .nav-drop-btn.is-section::after{transform:scaleX(1)} .nav-drop-btn .chev{width:10px;height:6px;flex-shrink:0;transition:transform .25s ease} .nav-drop-btn[aria-expanded="true"] .chev{transform:rotate(180deg)} .subnav{ position:absolute;top:calc(100% + .85rem);left:50%;min-width:236px;padding:.55rem; background:var(--paper);border:1px solid var(--line);border-radius:14px; box-shadow:0 18px 44px rgba(28,28,30,.13);z-index:70; opacity:0;visibility:hidden;transform:translate(-50%,8px); transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s; } .subnav::before{content:"";position:absolute;left:0;right:0;top:-.9rem;height:.9rem} .subnav.open{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .22s ease,transform .22s ease} .main-nav .subnav a{display:block;padding:.58rem .9rem;border-radius:9px;white-space:nowrap} .main-nav .subnav a::after{content:none} .main-nav .subnav a:hover{background:rgba(215,14,84,.06);color:var(--brand-deep)} .main-nav .subnav a[aria-current="page"]{background:rgba(215,14,84,.06)} .main-nav .subnav a[aria-current="page"]::before{ content:"";position:absolute;left:0;top:.55rem;bottom:.55rem;width:2px; border-radius:2px;background:var(--brand); } .ov-group{border-bottom:1px solid var(--line-light)} .ov-label{ font-family:var(--font-display);font-size:clamp(2rem,8vw,3.4rem); color:rgba(241,239,236,.55);padding:.5rem 0 .2rem;margin:0; } .nav-overlay .ov-sub{display:flex;flex-direction:column;padding:0 0 .9rem 1.3rem} .nav-overlay .ov-sub a{ font-size:clamp(1.3rem,4.5vw,1.8rem);padding:.3rem 0;border-bottom:0; color:rgba(241,239,236,.88); } @media (prefers-reduced-motion:reduce){ .subnav,.subnav.open,.nav-drop-btn::after,.nav-drop-btn .chev{transition:none} } .nav-home{display:inline-flex;align-items:center;padding:.3rem 0} .main-nav .nav-home{color:var(--ink-soft)} .nav-home svg{width:17px;height:17px; transform:translateY(-1.5px)} .nav-home::after{content:none} .nav-home:hover{color:var(--brand-deep)} .main-nav .nav-home[aria-current="page"]{color:var(--brand-deep)} body.nav-open .site-head{z-index:70;background:transparent;box-shadow:none;backdrop-filter:none} body.nav-open .site-head .logo,body.nav-open .head-phone,body.nav-open .head-cta{visibility:hidden} body.nav-open .burger{border-color:rgba(241,239,236,.35)} .subhero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2.5rem,6vw,5rem);align-items:center} .lm-scene{position:relative;min-height:340px;color:#4c4a47} .lm-scene svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible} @media (max-width:900px){.subhero-grid{grid-template-columns:1fr}.lm-scene{min-height:260px;order:2}} .tint-b3{background:#f1f1f0} .mbh .mb-card .svc-visual{margin:1.2rem 0 0;background:linear-gradient(140deg,#fbfbfa,#e9e9e8)} .mbh .mb-card .scene{color:#3c3a38} .mb-card .card-head{display:flex;align-items:baseline;gap:.9rem;margin:1.7rem 0 .95rem} .mb-card .card-head .num{font-size:1.45rem;color:var(--brand-deep);line-height:1;flex-shrink:0} .mb-card .card-head h3{margin:0} .tint-b3 .mb-card{transition:box-shadow .3s ease,border-color .3s ease} .tint-b3 .mb-card:hover{border-color:rgba(215,14,84,.5);box-shadow:0 22px 46px -26px rgba(28,28,30,.35)} .card-flash{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0; border:1px solid rgba(215,14,84,.65);box-shadow:0 24px 48px -20px rgba(215,14,84,.35)} .mb-cta{justify-content:center;align-items:center;text-align:center;overflow:hidden; color:#f1efec;background:linear-gradient(var(--dark),var(--dark)) padding-box,var(--grad) border-box; border:1px solid transparent} .mb-cta .disp{font-size:clamp(1.5rem,1.2rem + 1.1vw,2.1rem);margin-bottom:1.7rem;color:#f1efec;max-width:15ch} .mb-cta .disp,.mb-cta .btn{position:relative;z-index:1} .cta-glow{position:absolute;inset:-45%;pointer-events:none;z-index:0; background:radial-gradient(circle at 35% 35%,rgba(215,14,84,.62),rgba(215,14,84,.18) 46%,transparent 66%)} .cta-band{margin:5.5rem 0 3rem;background:var(--dark);color:#f1efec;position:relative;overflow:hidden} .cta-band::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--grad)} .cta-row{display:flex;align-items:center;justify-content:space-between;gap:1.2rem 2rem;flex-wrap:wrap; padding:2rem var(--gutter);max-width:var(--max);margin-inline:auto} .cta-row .disp{font-size:clamp(1.25rem,1.05rem + 1vw,1.8rem);color:#f1efec;margin:0} @media (max-width:640px){.cta-row{justify-content:flex-start;padding:1.7rem var(--gutter)}} .certs-row img{transition:box-shadow .25s ease} .honest{padding:8rem 0 3rem;position:relative} .honest .abgr-close{max-width:44ch} .faq{padding:7.5rem 0 3.5rem;position:relative;overflow-x:clip;overflow-y:visible} .faq h2{max-width:24ch} .faq-list{margin-top:3.4rem;border-top:1px solid var(--line);position:relative} .faq-item{border-bottom:1px solid var(--line)} .faq-q{width:100%;display:grid;grid-template-columns:3.4rem minmax(0,1fr) 42px;align-items:center;gap:1.2rem; padding:1.9rem .2rem;background:none;border:0;cursor:pointer;text-align:left; font-family:var(--font-display);font-weight:var(--disp-weight);letter-spacing:var(--disp-tracking); font-size:clamp(1.25rem,1.05rem + 1vw,1.75rem);color:var(--ink);transition:color .25s ease} .faq-q:hover{color:var(--brand-deep)} .faq-num{font-family:Inter,sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.14em;color:var(--brand-deep)} .faq-q .faq-ico{flex-shrink:0;justify-self:end;width:42px;height:42px;border:1px solid var(--line);border-radius:50%; display:grid;place-items:center;color:var(--brand-deep);transition:transform .3s ease,background .25s ease,color .25s ease,border-color .25s ease} .faq-q[aria-expanded="true"] .faq-ico{transform:rotate(45deg);background:var(--brand);border-color:var(--brand);color:#fff} .faq-a{overflow:hidden} .faq-a>p{margin:0 0 1.9rem calc(3.4rem + 1.2rem);padding:.2rem 0 0 1.4rem; border-left:2px solid rgba(215,14,84,.55);color:var(--ink-soft);max-width:66ch} .js .faq-a[data-closed]{display:none} @media (max-width:700px){ .faq-q{grid-template-columns:minmax(0,1fr) 38px;gap:1rem;font-size:clamp(1.12rem,1rem + .8vw,1.4rem);padding:1.55rem .2rem} .faq-num{display:none} .faq-q .faq-ico{width:38px;height:38px} .faq-a>p{margin-left:0} } .faq-gulls{position:absolute;inset:0;pointer-events:none} .faq-gull{position:absolute;top:34px;left:0;width:96px;color:var(--ink);opacity:0} .faq-gull.fg-e{width:82px} .faq-gull svg{display:block;width:100%;height:auto;overflow:visible} .fg-mark{font:600 26px/1 var(--font-display);fill:var(--brand)} .faq-mehr>summary{list-style:none;cursor:pointer;display:block;padding:0 0 .4rem} .faq-mehr>summary::-webkit-details-marker{display:none} .faq-peek{display:grid;grid-template-columns:3.4rem minmax(0,1fr) 42px;align-items:center;gap:1.2rem; padding:1.9rem .2rem 0;max-height:4.9rem;overflow:hidden; font-family:var(--font-display);font-weight:var(--disp-weight);letter-spacing:var(--disp-tracking); font-size:clamp(1.25rem,1.05rem + 1vw,1.75rem);color:var(--ink);transition:color .25s ease; -webkit-mask-image:linear-gradient(to bottom,#000 8%,transparent 88%); mask-image:linear-gradient(to bottom,#000 8%,transparent 88%)} .faq-peek .faq-ico{flex-shrink:0;justify-self:end;width:42px;height:42px;border:1px solid var(--line);border-radius:50%; display:grid;place-items:center;color:var(--brand-deep)} .faq-mehr>summary:hover .faq-peek{color:var(--brand-deep)} .faq-mehr-btn{display:table;margin:.35rem auto 0;padding:.7rem 1.5rem;border:1px solid var(--line);border-radius:var(--r-btn); font-size:.85rem;font-weight:500;color:var(--ink);transition:border-color .2s ease,color .2s ease} .faq-mehr>summary:hover .faq-mehr-btn{border-color:var(--brand);color:var(--brand-deep)} .faq-mehr>summary:focus-visible{outline:none} .faq-mehr>summary:focus-visible .faq-mehr-btn{outline:2px solid var(--brand);outline-offset:2px} .faq-mehr[open]>summary{display:none} @media (max-width:700px){ .faq-peek{grid-template-columns:minmax(0,1fr) 38px;gap:1rem;font-size:clamp(1.12rem,1rem + .8vw,1.4rem);padding-top:1.55rem;max-height:4.2rem} .faq-peek .faq-num{display:none} .faq-peek .faq-ico{width:38px;height:38px} } @media (max-width:700px){.faq-gull{width:56px;top:4px}.faq-gull.fg-e{width:48px}} .art{padding-block:11rem 3rem} .backlink{display:inline-flex;align-items:center;gap:.5rem;font-size:.88rem; color:var(--brand-deep);text-decoration:none;margin-bottom:2.2rem} .backlink:hover{text-decoration:underline} .art h1{font-size:clamp(2rem,1.4rem + 2.6vw,3.6rem);max-width:24ch;margin-top:1.2rem} .art-meta{margin-top:1.4rem;font-size:.85rem;color:var(--ink-soft);display:flex;gap:.6rem;flex-wrap:wrap} .art-meta span::after{content:"·";margin-left:.6rem;opacity:.5} .art-meta span:last-child::after{content:""} .art .teaser{margin-top:1.9rem;max-width:58ch;font-size:1.1rem;color:var(--ink-soft)} .art-body{max-width:62ch;margin-top:3rem;color:var(--ink-soft)} .art-body h2{font-size:clamp(1.35rem,1.15rem + .9vw,1.8rem);color:var(--ink); max-width:28ch;margin:2.8rem 0 1rem} .art-body p+p{margin-top:1.1rem} .art-body ul,.art-body ol{margin:1.1rem 0;padding-left:1.2rem} .art-body li{margin:.5rem 0} .art-body strong{color:var(--ink)} .art{position:relative} .art-contact-sep{height:3.5rem;margin-top:2.2rem;background:#f7f6f4} .art-contact-sep + .contact{background:#f7f6f4} @media (min-width:1001px){.art-contact-sep + .contact{padding-top:5rem}} .art-note{border-left:2px solid var(--brand);background:#f7f6f4;border-radius:0 10px 10px 0; padding:1rem 1.3rem;margin:1.8rem 0} .art-gulls{position:absolute;top:110px;right:0;width:260px;height:calc(100% - 200px);pointer-events:none;color:var(--ink);z-index:1} .art-gulls svg{width:100%;height:auto;overflow:visible} @media (max-width:1280px){.art-gulls{display:none}} @media (min-width:701px) and (max-width:1099px){ .flt-stage{height:auto;display:grid;grid-template-columns:repeat(3,1fr); gap:1.4rem;align-items:start} .flt-par{position:static!important;transform:none!important;width:auto!important} .flt-in{transform:none!important;opacity:1!important} .flt-note{max-width:none;padding:1.2rem .4rem} } h1,h2,h3,.eyebrow,.lead{transition:color .6s ease} .stat .val{font-variant-numeric:tabular-nums} body.bg-dark :is(h1,h2,h3,.eyebrow,.lead):not(:is(.svc,.case,.mb-card, .split-card,.form,.contact,.band,[class*="tint-"],.flb,.art,.faq-item, .advisory,.og-grid,.gp-card) *){color:#f1efec} .quote .qt,.quote footer,.quote figcaption,.quote .quote-sig, .stats .stat p,.stats .stat{transition:color .6s ease} body:not(.bg-dark) .quote :is(.qt,footer,figcaption){color:var(--ink)!important} body:not(.bg-dark) .quote .quote-sig{color:var(--ink)!important} body:not(.bg-dark) .stats :is(.stat,.stat p){color:var(--ink-soft)} .nav-overlay .ov-sub a[aria-current="page"]{color:var(--brand)} .logoband{padding:4.5rem 0 4rem;overflow:hidden} .lb-cap{text-align:center;font-size:.78rem;letter-spacing:.16em; text-transform:uppercase;color:var(--muted);margin:0 var(--gutter) 2.4rem} .lb-track{display:flex;width:max-content; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none} .lb-track.is-drag{cursor:grabbing} .lb-set{display:flex;align-items:center;gap:clamp(2.6rem,6vw,5.2rem); padding-right:clamp(2.6rem,6vw,5.2rem)} .lb-set img{height:44px;width:auto;max-width:200px;object-fit:contain; filter:grayscale(1) contrast(1.12);opacity:.82;transition:filter .35s ease,opacity .35s ease} .lb-set img:hover{filter:none;opacity:1} @media (prefers-reduced-motion:reduce){ .lb-track{width:auto;flex-wrap:wrap;justify-content:center; -webkit-mask-image:none;mask-image:none} .lb-track .lb-set[aria-hidden]{display:none} } @keyframes eyRiseY{from{opacity:0;transform:translateY(var(--ey-y,30px))}to{opacity:1;transform:none}} @keyframes eySlideY{from{transform:translateY(var(--ey-y,30px))}to{transform:none}} @keyframes eyRiseX{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}} @keyframes eyRiseClip{from{opacity:0;transform:translateY(40px);clip-path:inset(0% 0% 100% 0%)} to{opacity:1;transform:none;clip-path:inset(0% 0% -14% 0%)}} @media (prefers-reduced-motion: no-preference){ .hrv{animation:eyRiseY .9s cubic-bezier(.215,.61,.355,1) both} .eyebrow.hrv{animation-delay:.5s} h1.hrv{animation-name:eySlideY;animation-delay:0s} .lead.hrv{animation-name:eySlideY;animation-delay:.12s} .hero-ctas.hrv{animation-delay:.86s} .trust.hrv{animation-delay:.98s} .subhero .eyebrow{animation:eyRiseX .7s cubic-bezier(.165,.84,.44,1) .15s both} .subhero h1{--ey-y:40px;animation:eySlideY 1s cubic-bezier(.165,.84,.44,1) 0s both} .subhero .lead{--ey-y:26px;animation:eySlideY .8s cubic-bezier(.165,.84,.44,1) .15s both} .subhero .btn{--ey-y:18px;animation:eyRiseY .6s cubic-bezier(.165,.84,.44,1) 1.25s both} .lp-hero .eyebrow,.lp-hero h1,.lp-lead,.lp-usps li{--ey-y:26px; animation:eyRiseY .75s cubic-bezier(.165,.84,.44,1) both} .lp-hero .eyebrow{animation-delay:.1s} .lp-hero h1{animation-name:eySlideY;animation-delay:0s} .lp-lead{animation-name:eySlideY;animation-delay:.09s} .lp-usps li:nth-child(1){animation-delay:.37s} .lp-usps li:nth-child(2){animation-delay:.46s} .lp-usps li:nth-child(3){animation-delay:.55s} .lp-usps li:nth-child(4){animation-delay:.64s} .lp-usps li:nth-child(5){animation-delay:.73s} } body.a11y-motion .hrv,body.a11y-motion .subhero .eyebrow,body.a11y-motion .subhero h1, body.a11y-motion .subhero .lead,body.a11y-motion .subhero .btn,body.a11y-motion .lp-hero .eyebrow, body.a11y-motion .lp-hero h1,body.a11y-motion .lp-lead,body.a11y-motion .lp-usps li{animation:none} @keyframes gwH1Walk{ 0%{opacity:1;transform:translate(-110px,0px) rotate(0deg);animation-timing-function:linear} 10.405%{opacity:1;transform:translate(var(--gwx1,120px),0px) rotate(0deg);animation-timing-function:linear} 18.439%{opacity:1;transform:translate(var(--gwx1,120px),0px) rotate(0deg);animation-timing-function:linear} 29.422%{opacity:1;transform:translate(var(--gwx2,250px),0px) rotate(0deg);animation-timing-function:linear} 31.156%{opacity:1;transform:translate(var(--gwx2,250px),0px) rotate(0deg);animation-timing-function:cubic-bezier(.55,.085,.68,.53)} 36.358%,100%{opacity:0;transform:translate(calc(var(--gwx2,250px) + 170px),-110px) rotate(-14deg)} } @keyframes gwH1Leg1{ 0%{transform:rotate(0deg)} 0.867%{transform:rotate(26deg)} 1.734%{transform:rotate(0deg)} 2.601%{transform:rotate(26deg)} 3.468%{transform:rotate(0deg)} 4.335%{transform:rotate(26deg)} 5.202%{transform:rotate(0deg)} 6.069%{transform:rotate(26deg)} 6.936%{transform:rotate(0deg)} 7.803%{transform:rotate(26deg)} 8.671%{transform:rotate(0deg)} 9.538%{transform:rotate(26deg)} 10.405%{transform:rotate(0deg)} 18.439%{transform:rotate(0deg)} 19.355%{transform:rotate(26deg)} 20.27%{transform:rotate(0deg)} 21.185%{transform:rotate(26deg)} 22.1%{transform:rotate(0deg)} 23.015%{transform:rotate(26deg)} 23.931%{transform:rotate(0deg)} 24.846%{transform:rotate(26deg)} 25.761%{transform:rotate(0deg)} 26.676%{transform:rotate(26deg)} 27.592%{transform:rotate(0deg)} 28.507%{transform:rotate(26deg)} 29.422%{transform:rotate(0deg)} 100%{transform:rotate(0deg)} } @keyframes gwH1Leg2{ 0%{transform:rotate(0deg)} 0.867%{transform:rotate(-26deg)} 1.734%{transform:rotate(0deg)} 2.601%{transform:rotate(-26deg)} 3.468%{transform:rotate(0deg)} 4.335%{transform:rotate(-26deg)} 5.202%{transform:rotate(0deg)} 6.069%{transform:rotate(-26deg)} 6.936%{transform:rotate(0deg)} 7.803%{transform:rotate(-26deg)} 8.671%{transform:rotate(0deg)} 9.538%{transform:rotate(-26deg)} 10.405%{transform:rotate(0deg)} 18.439%{transform:rotate(0deg)} 19.355%{transform:rotate(-26deg)} 20.27%{transform:rotate(0deg)} 21.185%{transform:rotate(-26deg)} 22.1%{transform:rotate(0deg)} 23.015%{transform:rotate(-26deg)} 23.931%{transform:rotate(0deg)} 24.846%{transform:rotate(-26deg)} 25.761%{transform:rotate(0deg)} 26.676%{transform:rotate(-26deg)} 27.592%{transform:rotate(0deg)} 28.507%{transform:rotate(-26deg)} 29.422%{transform:rotate(0deg)} 100%{transform:rotate(0deg)} } @keyframes gwH1Bob{ 0%{transform:translateY(0px)} 0.867%{transform:translateY(-1.6px)} 1.734%{transform:translateY(0px)} 2.601%{transform:translateY(-1.6px)} 3.468%{transform:translateY(0px)} 4.335%{transform:translateY(-1.6px)} 5.202%{transform:translateY(0px)} 6.069%{transform:translateY(-1.6px)} 6.936%{transform:translateY(0px)} 7.803%{transform:translateY(-1.6px)} 8.671%{transform:translateY(0px)} 9.538%{transform:translateY(-1.6px)} 10.405%{transform:translateY(0px)} 18.439%{transform:translateY(0px)} 19.355%{transform:translateY(-1.6px)} 20.27%{transform:translateY(0px)} 21.185%{transform:translateY(-1.6px)} 22.1%{transform:translateY(0px)} 23.015%{transform:translateY(-1.6px)} 23.931%{transform:translateY(0px)} 24.846%{transform:translateY(-1.6px)} 25.761%{transform:translateY(0px)} 26.676%{transform:translateY(-1.6px)} 27.592%{transform:translateY(0px)} 28.507%{transform:translateY(-1.6px)} 29.422%{transform:translateY(0px)} 100%{transform:translateY(0px)} } @keyframes gwH1Peck{ 0%{transform:rotate(0deg)} 12.428%{transform:rotate(0deg)} 13.353%{transform:rotate(34deg)} 14.277%{transform:rotate(0deg)} 15.202%{transform:rotate(34deg)} 16.127%{transform:rotate(0deg)} 100%{transform:rotate(0deg)} } .gull-h1{will-change:transform,opacity} .gull-h1 .gw-leg1,.gull-h1 .gw-leg2,.gull-h1 .gw-head{transform-box:view-box} .gull-h1 .gw-leg1{transform-origin:40px 51px} .gull-h1 .gw-leg2{transform-origin:52px 51px} .gull-h1 .gw-head{transform-origin:62px 26px} @media (prefers-reduced-motion: no-preference){ .gull-h1{animation:gwH1Walk 17.3s linear 3.5s infinite} .gull-h1 .gw-leg1{animation:gwH1Leg1 17.3s ease-in-out 3.5s infinite} .gull-h1 .gw-leg2{animation:gwH1Leg2 17.3s ease-in-out 3.5s infinite} .gull-h1 .gw-bodyg{animation:gwH1Bob 17.3s ease-in-out 3.5s infinite} .gull-h1 .gw-head{animation:gwH1Peck 17.3s ease-in-out 3.5s infinite} } body.a11y-motion .gull-h1,body.a11y-motion .gull-h1 .gw-leg1, body.a11y-motion .gull-h1 .gw-leg2,body.a11y-motion .gull-h1 .gw-bodyg, body.a11y-motion .gull-h1 .gw-head{animation:none}