/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.overline{text-decoration-line:overline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--blue:#253fda;--blue-dark:#0b1648;--lime:#daff47;--ink:#101116;--muted:#6c6f78;--paper:#f4f3ef;--white:#fff;--line:#d9dad7;--shell:min(1240px, calc(100vw - 72px));--ease:cubic-bezier(.18, .82, .2, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}html.premium-scroll{scroll-behavior:auto}:is(html:has(body.audience-open),html:has(body.menu-open)){overflow:hidden}body{color:var(--ink);background:var(--paper);font-family:var(--font-geist-sans), Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}body.menu-open,body.audience-open{overflow:hidden}body:has(.site-intro:not(.is-done)){overflow:hidden}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{width:100%;display:block}h1,h2,h3,p,figure{margin-top:0}section[id]{scroll-margin-top:82px}::selection{color:var(--ink);background:var(--lime)}.page-shell{width:var(--shell);margin-inline:auto}.skip-link{z-index:2000;color:#fff;background:var(--ink);padding:11px 15px;position:fixed;top:-70px;left:18px}.skip-link:focus{top:14px}.section-index{color:var(--blue);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:9px;font-weight:650}.site-intro{z-index:1500;color:#fff;background:var(--blue);clip-path:inset(0);transition:clip-path .82s var(--ease), visibility 0s .84s;animation:introFailSafe .82s 2s var(--ease) forwards;position:fixed;inset:0}.site-intro.is-done{clip-path:inset(0 0 100%);visibility:hidden;pointer-events:none}.intro-mark{justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;inset:0}.intro-mark strong{letter-spacing:-.12em;animation:introMark .8s 80ms var(--ease) both;font-size:clamp(96px,15vw,220px);font-weight:790;line-height:.7}.intro-mark span{color:var(--lime);text-transform:uppercase;font-size:11px;font-weight:710;line-height:1.05;animation:.6s .28s both introMeta}.intro-meta{font-family:var(--font-geist-mono), monospace;letter-spacing:.13em;justify-content:space-between;gap:25px;font-size:8px;display:flex;position:absolute;bottom:5vw;left:4vw;right:4vw}.intro-meta span{animation:.6s .38s both introMeta}.intro-progress{background:#ffffff40;height:2px;position:absolute;bottom:3.6vw;left:4vw;right:4vw;overflow:hidden}.intro-progress i{background:var(--lime);transform-origin:0;height:100%;animation:introProgress 1.18s 80ms var(--ease) forwards;display:block;transform:scaleX(0)}@keyframes introMark{0%{opacity:0;transform:translateY(22px)}}@keyframes introMeta{0%{opacity:0}}@keyframes introProgress{to{transform:scaleX(1)}}@keyframes introFailSafe{to{clip-path:inset(0 0 100%);visibility:hidden;pointer-events:none}}.site-header{z-index:700;width:100%;height:92px;transition:height .35s var(--ease), background .3s ease, border-color .3s ease;justify-content:space-between;align-items:center;padding:0 38px;display:flex;position:fixed;top:0;left:0}.site-header.is-solid{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4f3efe6;border-bottom:1px solid #10111617;height:70px}.site-header.on-gateway{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;height:92px}.brand{align-items:flex-start;gap:10px;width:max-content;display:inline-flex}.brand strong{color:var(--blue);letter-spacing:-.11em;font-size:34px;font-weight:790;line-height:.75}.brand span{color:var(--ink);text-transform:uppercase;font-size:8px;font-weight:720;line-height:1.05}.header-side{align-items:center;gap:18px;display:flex}.header-contact{color:#fff;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#1011162e;border:1px solid #ffffffa6;padding:12px 16px;font-size:10px;font-weight:650}.site-header.is-solid .header-contact{color:var(--ink);border-color:var(--ink);background:0 0}.site-header.on-gateway .brand strong{color:var(--lime)}.site-header.on-gateway .brand span{color:#fff}.site-header.on-gateway .header-contact{color:#fff;background:#070d1938;border-color:#ffffff80}.site-header.on-gateway .menu-trigger{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#070d19b8;box-shadow:inset 0 0 0 1px #ffffff24}.menu-trigger{color:#fff;background:var(--ink);border:0;border-radius:99px;align-items:center;gap:14px;min-width:110px;height:48px;padding:0 18px;display:flex;position:relative}.menu-trigger span{font-size:11px;font-weight:620}.menu-trigger i{background:#fff;width:20px;height:1px;position:absolute;top:20px;right:18px}.menu-trigger i:last-child{width:13px;top:27px}.audience-gateway{z-index:650;color:#fff;visibility:hidden;background:#0a1020;position:fixed;inset:0;overflow:hidden}.audience-gateway.is-ready{visibility:visible}.gateway-grid{width:100%;height:100%;display:flex}.gateway-choice{color:#fff;text-align:left;clip-path:inset(100% 0 0);min-width:0;height:100%;transition:flex-grow .92s var(--ease), flex-basis .92s var(--ease), opacity .58s ease, clip-path 1.05s var(--ease);background:#101827;border:0;flex:1 1 0;padding:0;position:relative;overflow:hidden;container-type:inline-size}.audience-gateway.is-ready .gateway-choice{clip-path:inset(0)}.audience-gateway.is-ready .gateway-choice:nth-child(2){transition-delay:80ms,80ms,80ms,.1s}.gateway-choice+.gateway-choice{border-left:1px solid #ffffff5c}.gateway-choice>img{object-fit:cover;filter:saturate(.78);height:100%;transition:transform 1.25s var(--ease), filter .55s ease;position:absolute;inset:0;transform:scale(1.025)}.gateway-business>img{object-position:53% center}.gateway-shade{background:linear-gradient(#04091485 0%,#0409140d 39%,#040914c7 100%);transition:background .5s;position:absolute;inset:0}.gateway-hotels .gateway-shade{box-shadow:inset 0 0 0 999px #253fda17}.gateway-business .gateway-shade{box-shadow:inset 0 0 0 999px #06102d24}.gateway-grid:has(.gateway-choice:hover) .gateway-choice:not(:hover){flex-grow:.85}.gateway-choice:hover,.gateway-choice:focus-visible{flex-grow:1.15}.gateway-choice:hover>img,.gateway-choice:focus-visible>img{filter:saturate(.98);transform:scale(1.065)}.gateway-choice:hover .gateway-shade,.gateway-choice:focus-visible .gateway-shade{background:linear-gradient(#04091466 0%,#04091405 42%,#040914ad 100%)}.gateway-choice:focus-visible{z-index:3;outline:2px solid var(--lime);outline-offset:-7px}.gateway-label{z-index:4;color:#ffffffc7;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-align:center;pointer-events:none;gap:8px;font-size:8px;transition:opacity .35s;display:grid;position:absolute;top:123px;left:50%;transform:translate(-50%)}.gateway-label span:last-child{color:var(--lime)}.gateway-content{z-index:2;transition:opacity .42s ease, transform .58s var(--ease);grid-template-columns:auto 1fr;align-items:end;column-gap:20px;display:grid;position:absolute;bottom:clamp(52px,6.3vw,94px);left:clamp(28px,3.6vw,62px);right:clamp(28px,3.6vw,62px)}.gateway-number{color:var(--lime);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;grid-row:1;align-self:center;font-size:9px}.gateway-title{letter-spacing:-.075em;white-space:nowrap;grid-column:1/-1;margin-top:22px;font-size:clamp(46px,11cqw,112px);font-weight:520;line-height:.82}.gateway-business .gateway-title{font-size:clamp(43px,10cqw,96px)}.gateway-description{color:#ffffffbf;letter-spacing:.01em;grid-column:1/-1;margin-top:27px;font-size:13px}.gateway-enter{width:72px;height:72px;transition:color .32s ease, background .32s ease, border-color .32s ease, transform .55s var(--ease);border:1px solid #ffffff9e;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-6px;right:0}.gateway-enter i{font-size:10px;font-style:normal;font-weight:650}.gateway-enter b{font-size:11px;font-weight:500;position:absolute;top:10px;right:15px}.gateway-choice:hover .gateway-enter,.gateway-choice:focus-visible .gateway-enter{color:var(--ink);background:var(--lime);border-color:var(--lime);transform:rotate(7deg)scale(1.06)}.gateway-footnote{z-index:3;color:#ffffff8f;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;pointer-events:none;margin:0;font-size:8px;transition:opacity .35s;position:absolute;bottom:22px;right:36px}.audience-gateway.is-leaving .gateway-label,.audience-gateway.is-leaving .gateway-footnote{opacity:0}.audience-gateway.is-leaving .gateway-choice{transition-delay:0s}.audience-gateway.is-leaving .gateway-choice.is-selected{flex-grow:100;flex-basis:100%}.audience-gateway.is-leaving .gateway-choice.is-rejected{opacity:0;border:0;flex-grow:0;flex-basis:0}.audience-gateway.is-leaving .gateway-choice.is-selected .gateway-content{opacity:0;transform:translateY(22px)}.audience-gateway.is-leaving .gateway-choice.is-selected>img{filter:saturate();transform:scale(1)}.menu-panel{z-index:1000;color:#fff;visibility:hidden;transform-origin:top;height:calc(100svh - 20px);min-height:620px;transition:transform .78s var(--ease), visibility 0s .8s;background:#0c141b;border-radius:22px;grid-template-rows:82px 1fr 74px;display:grid;position:fixed;inset:10px 10px auto;overflow:hidden;transform:translateY(calc(-100% - 18px))scale(.985)}.menu-panel.is-open{visibility:visible;transition-delay:0s;transform:none}.menu-top,.menu-bottom{z-index:5;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 28px;display:grid;position:relative}.menu-top{border-bottom:1px solid #ffffff1f}.menu-brand strong{color:var(--lime)}.menu-brand span{color:#fff}.menu-caption{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;font-size:8px}.menu-close{background:0 0;border:1px solid #ffffff59;border-radius:50%;justify-self:end;width:46px;height:46px;padding:0;position:relative}.menu-close i{background:#fff;width:19px;height:1px;position:absolute;top:22px;left:13px;transform:rotate(45deg)}.menu-close i:last-child{transform:rotate(-45deg)}.menu-stage{place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.menu-stage nav{z-index:3;justify-items:center;display:grid;position:relative}.menu-stage nav a{letter-spacing:-.055em;opacity:.54;height:62px;transition:opacity .25s ease, transform .35s var(--ease);align-items:baseline;gap:13px;font-size:clamp(38px,4vw,59px);font-weight:610;line-height:1;display:flex}.menu-stage nav a small{color:var(--lime);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:8px}.menu-stage nav a span{border-radius:5px;padding:1px 9px 4px;transition:color .25s,background .25s}.menu-stage nav a.is-active{opacity:1;transform:translate(10px)}.menu-stage nav a.is-active span{color:var(--ink);background:#fff}.menu-photo-reel{z-index:1;width:106vw;transition:top .55s var(--ease), opacity .4s ease, filter .45s ease;opacity:.88;filter:blur();justify-content:space-between;align-items:center;gap:22px;display:flex;position:absolute;left:-3vw;transform:translateY(-50%)}.menu-panel:not(.is-open) .menu-photo-reel{opacity:0;filter:blur(12px)}.menu-photo-reel figure{border-radius:8px;flex:none;width:clamp(86px,9vw,138px);height:clamp(66px,7vw,102px);margin:0;overflow:hidden;box-shadow:0 20px 50px #00000059}.menu-photo-reel figure:nth-child(2),.menu-photo-reel figure:nth-child(5){width:clamp(105px,11vw,170px);height:clamp(74px,8vw,116px)}.menu-photo-reel figure:nth-child(3){transform:rotate(-3deg)}.menu-photo-reel figure:nth-child(4){transform:rotate(3deg)}.menu-photo-reel img{object-fit:cover;height:100%}.menu-bottom{color:#ffffff9e;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #ffffff1f;grid-template-columns:1fr 1fr 1fr;font-size:8px}.menu-bottom>:nth-child(2){text-align:center}.menu-bottom>:last-child{text-align:right}.hero{background:var(--paper);grid-template-columns:56% 44%;min-height:max(760px,100svh);display:grid;position:relative;overflow:hidden}.hero-copy{flex-direction:column;justify-content:center;min-width:0;padding:145px clamp(40px,6vw,96px) 96px;display:flex}.overline{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;animation:heroEnter .7s 1.48s var(--ease) both;margin:0 0 70px;font-size:9px}.hero h1{letter-spacing:-.075em;animation:heroEnter .8s 1.54s var(--ease) both;margin:0;font-size:clamp(72px,7.7vw,118px);font-weight:510;line-height:.84}.hero h1 em{color:var(--blue);font-style:normal;font-weight:730}.hero-lead{max-width:630px;min-height:56px;color:var(--muted);animation:copySwap .42s var(--ease), heroEnter .7s 1.62s var(--ease) both;margin:52px 0 0;font-size:18px;line-height:1.55}.audience-return{width:max-content;color:var(--muted);letter-spacing:.025em;animation:heroEnter .7s 1.68s var(--ease) both;background:0 0;border:0;border-bottom:1px solid #1011166b;align-items:center;gap:12px;margin-top:27px;padding:0 0 6px;font-size:10px;display:inline-flex}.audience-return span{color:var(--blue);font-weight:690}.audience-return i{background:var(--ink);border-radius:50%;width:4px;height:4px}.audience-return:hover{color:var(--ink);border-color:var(--ink)}.hero-actions{animation:heroEnter .7s 1.74s var(--ease) both;flex-wrap:wrap;align-items:center;gap:26px;margin-top:40px;display:flex}.button-primary{color:#fff;background:var(--ink);min-width:210px;height:54px;transition:color .25s ease, background .25s ease, transform .35s var(--ease);justify-content:space-between;align-items:center;gap:35px;padding:0 20px;font-size:12px;font-weight:620;display:inline-flex}.button-primary:hover{color:var(--ink);background:var(--lime);transform:translateY(-2px)}.button-text{border-bottom:1px solid var(--ink);align-items:center;gap:16px;padding-bottom:5px;font-size:12px;font-weight:620;display:inline-flex}.button-text span{color:var(--blue)}.hero-media{min-width:0;animation:heroMediaIn .95s 1.4s var(--ease) both;background:#c8cbd1;margin:0;position:relative;overflow:hidden}.hero-media:after{content:"";pointer-events:none;background:linear-gradient(#0000001f,#0000 40%,#00000080);position:absolute;inset:0}.hero-media>img{object-fit:cover;height:100%;animation:imageSwap .65s var(--ease) both}.hero-media figcaption{z-index:2;color:#fff;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;justify-content:space-between;gap:20px;font-size:8px;display:flex;position:absolute;top:116px;left:30px;right:30px}.hero-media figcaption b{font-weight:500}.hero-media>a{z-index:2;width:235px;height:62px;color:var(--ink);background:var(--lime);justify-content:space-between;align-items:center;padding:0 20px;font-size:11px;font-weight:680;display:flex;position:absolute;bottom:28px;right:28px}.hero-media>a span{font-size:17px}.hero-scroll{z-index:3;color:var(--muted);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:13px;font-size:8px;display:flex;position:absolute;bottom:31px;left:clamp(40px,6vw,96px)}.hero-scroll i{background:var(--ink);width:54px;height:1px}@keyframes heroEnter{0%{opacity:0;transform:translateY(24px)}}@keyframes heroMediaIn{0%{opacity:0;clip-path:inset(0 0 100%)}}@keyframes imageSwap{0%{opacity:.25;transform:scale(1.03)}}@keyframes copySwap{0%{opacity:0;transform:translateY(7px)}}.brand-strip{color:#fff;background:var(--ink);padding:38px 0 41px}.brand-row{grid-template-columns:215px 1fr;align-items:center;gap:55px;display:grid}.brand-row p{color:#ffffff73;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.1em;margin:0;font-size:8px;line-height:1.5}.brand-row>div{grid-template-columns:repeat(6,auto);justify-content:space-between;align-items:center;gap:24px;display:grid}.brand-row span{color:#fffc;white-space:nowrap;font-size:clamp(13px,1.25vw,17px);font-weight:630}.expertise-section{background:#fff;padding:145px 0 160px}.expertise-heading{grid-template-columns:190px 1fr;gap:60px;display:grid}.expertise-heading h2,.projects-heading h2,.services-title h2,.direction-grid>h2,.agency-content h2,.contact-grid h2{letter-spacing:-.065em;margin:0;font-size:clamp(52px,6.2vw,94px);font-weight:470;line-height:.97}.expertise-heading h2 em,.projects-heading h2 em,.services-title h2 em,.direction-grid>h2 em,.agency-content h2 em,.contact-grid h2 em{color:var(--blue);font-style:normal;font-weight:720}.expertise-grid{grid-template-columns:1.05fr .95fr;align-items:end;gap:clamp(65px,8vw,120px);margin-top:90px;display:grid}.expertise-photo{background:#ddd;min-height:610px;margin:0;position:relative;overflow:hidden}.expertise-photo img{object-fit:cover;height:100%;min-height:610px}.expertise-photo:after{content:"";background:linear-gradient(#0000 65%,#00000085);position:absolute;inset:0}.expertise-photo figcaption{z-index:2;color:#fff;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.08em;font-size:8px;position:absolute;bottom:20px;left:23px;right:23px}.expertise-copy{padding-bottom:12px}.expertise-lead{letter-spacing:-.04em;margin:0 0 35px;font-size:clamp(24px,2.6vw,38px);line-height:1.27}.expertise-copy>p:not(.expertise-lead){max-width:590px;color:var(--muted);margin:0;line-height:1.7}.expertise-columns{border-top:1px solid var(--ink);grid-template-columns:1fr 1fr;gap:38px;margin-top:55px;padding-top:22px;display:grid}.expertise-columns span{color:var(--blue);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:8px}.expertise-columns p{color:var(--muted);margin:13px 0 0;font-size:13px}.projects-section{background:var(--paper);padding:145px 0 170px}.projects-heading{grid-template-columns:190px 1fr minmax(260px,350px);align-items:end;gap:48px;display:grid}.projects-heading>p:last-child{color:var(--muted);margin:0}.projects-grid{grid-template-columns:1.18fr .82fr;gap:92px 24px;margin-top:85px;display:grid}.project-card{min-width:0}.project-card:nth-child(2){margin-top:110px}.project-card:nth-child(4){margin-top:70px}.project-card figure{background:#cfd1d4;margin:0;position:relative;overflow:hidden}.project-wide figure{aspect-ratio:1.45}.project-narrow figure{aspect-ratio:1/1.12}.project-card img{object-fit:cover;height:100%;transition:transform .75s var(--ease), filter .4s ease}.project-card:hover img{transform:scale(1.035)}.project-card figure:after{content:"";background:linear-gradient(#00000014,#0000 45%,#000000ad);position:absolute;inset:0}.project-overlay{z-index:2;color:#fff;flex-direction:column;justify-content:space-between;padding:25px;display:flex;position:absolute;inset:0}.project-overlay span{font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;font-size:8px}.project-overlay strong{letter-spacing:-.06em;font-size:clamp(38px,5vw,75px);font-weight:560;line-height:.9}.project-info{border-top:1px solid var(--ink);grid-template-columns:1fr auto;gap:35px;padding-top:18px;display:grid}.project-info p{max-width:520px;color:var(--muted);margin:0}.project-info span{color:var(--blue);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;text-align:right;letter-spacing:.06em;font-size:8px}.services-section{color:#fff;background:var(--blue-dark);padding:150px 0 165px}.services-grid{grid-template-columns:.72fr 1.28fr;gap:clamp(70px,9vw,140px);display:grid}.services-title{align-self:start;position:sticky;top:112px}.services-title .section-index{color:var(--lime)}.services-title h2{margin-top:38px;font-size:clamp(47px,5vw,76px)}.services-title h2 em{color:var(--lime)}.services-title>p:last-child{color:#ffffff94;max-width:440px;margin:42px 0 0}.services-list{border-top:1px solid #ffffff47}.services-list article{border-bottom:1px solid #ffffff47;grid-template-columns:45px 1fr auto;gap:22px;min-height:172px;padding:30px 0;display:grid}.services-list article>span{color:var(--lime);font-family:var(--font-geist-mono), monospace;font-size:8px}.services-list h3{letter-spacing:-.045em;margin:0 0 13px;font-size:clamp(27px,2.7vw,39px);font-weight:500}.services-list p{color:#ffffff94;max-width:580px;margin:0}.services-list a{border:1px solid #ffffff61;place-items:center;width:43px;height:43px;transition:color .25s,background .25s;display:grid}.services-list a:hover{color:var(--ink);background:var(--lime);border-color:var(--lime)}.direction-section{background:#fff;padding:150px 0 165px}.direction-grid{grid-template-columns:190px 1fr;gap:60px;display:grid}.direction-grid>h2{max-width:950px}.direction-steps{border-top:1px solid var(--ink);border-left:1px solid var(--line);grid-column:2;grid-template-columns:repeat(3,1fr);margin-top:80px;display:grid}.direction-steps article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:285px;padding:25px}.direction-steps span{color:var(--blue);font-family:var(--font-geist-mono), monospace;font-size:9px}.direction-steps h3{letter-spacing:-.04em;margin:125px 0 10px;font-size:27px;font-weight:560}.direction-steps p{color:var(--muted);margin:0;font-size:13px}.agency-section{color:#fff;background:var(--blue);min-height:790px;padding:150px 0 155px;position:relative;overflow:hidden}.agency-signal{color:#ffffff1a;letter-spacing:-.15em;font-size:clamp(250px,37vw,570px);font-weight:800;line-height:.68;position:absolute;bottom:-7vw;right:-4vw}.agency-signal i{background:var(--lime);border-radius:50%;width:145px;height:145px;position:absolute;top:-12%;right:14%}.agency-content{z-index:2;grid-template-columns:190px 1fr;gap:60px;display:grid;position:relative}.agency-content .section-index{color:var(--lime)}.agency-content h2{max-width:1030px}.agency-content h2 em{color:var(--lime)}.agency-copy{grid-column:2;grid-template-columns:1fr 1fr;gap:70px;max-width:900px;margin-top:70px;display:grid}.agency-copy>p{color:#ffffffb8;margin:0;font-size:18px;line-height:1.65}.agency-copy ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.agency-copy li{color:#ffffffc7;padding-left:18px;position:relative}.agency-copy li:before{content:"";background:var(--lime);width:6px;height:6px;position:absolute;top:.62em;left:0}.agency-link{border-bottom:1px solid #ffffffb8;grid-column:2;align-items:center;gap:22px;width:max-content;margin-top:58px;padding-bottom:7px;font-size:13px;font-weight:650;display:inline-flex}.agency-link span{color:var(--lime);font-size:18px}.contact-section{background:var(--paper);padding:150px 0 135px}.contact-grid{grid-template-columns:190px 1fr;gap:60px;display:grid}.contact-grid h2{max-width:1030px}.contact-grid>div>p{max-width:700px;color:var(--muted);margin:48px 0 68px;font-size:18px}.contact-mail{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);color:var(--blue);letter-spacing:-.045em;justify-content:space-between;align-items:center;gap:25px;padding:24px 0;font-size:clamp(29px,4.7vw,66px);font-weight:540;line-height:1;display:flex}.contact-mail i{color:var(--ink);font-style:normal}.contact-meta{color:var(--muted);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.08em;grid-template-columns:1fr 1fr 1fr;gap:25px;margin-top:32px;font-size:8px;display:grid}.contact-meta>:nth-child(2){text-align:center}.contact-meta>:last-child{text-align:right}.site-footer{color:#fff;background:var(--ink);padding:48px 0}.footer-grid{grid-template-columns:1fr auto auto;align-items:end;gap:55px;display:grid}.footer-brand strong{color:var(--lime)}.footer-brand span{color:#fff}.site-footer p{color:#ffffff73;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:8px}[data-reveal]{opacity:0;transition:opacity .68s ease, transform .82s var(--ease);transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:none}@media (width<=1050px){:root{--shell:min(100% - 44px, 930px)}.hero{grid-template-columns:58% 42%}.hero-copy{padding-inline:38px}.hero h1{font-size:clamp(63px,8.5vw,90px)}.hero-lead{font-size:16px}.brand-row{grid-template-columns:1fr;gap:22px}.brand-row>div{grid-template-columns:repeat(3,1fr);gap:18px}.expertise-heading,.direction-grid,.agency-content,.contact-grid{grid-template-columns:145px 1fr;gap:40px}.projects-heading{grid-template-columns:145px 1fr}.projects-heading>p:last-child{grid-column:2;max-width:600px}.services-grid{gap:65px}.agency-copy,.agency-link,.direction-steps{grid-column:2}}@media (width<=760px){:root{--shell:calc(100vw - 32px)}.site-header,.site-header.is-solid{height:70px;padding-inline:16px}.site-header.on-gateway{height:70px}.brand strong{font-size:30px}.header-contact{display:none}.menu-trigger{width:48px;min-width:48px;height:48px;padding:0}.menu-trigger span{display:none}.menu-trigger i{width:20px;right:14px}.menu-trigger i:last-child{width:14px}.gateway-grid{flex-direction:column}.gateway-choice{clip-path:inset(0 100% 0 0);flex:1 1 0;width:100%;height:auto}.audience-gateway.is-ready .gateway-choice{clip-path:inset(0)}.gateway-choice+.gateway-choice{border-top:1px solid #ffffff61;border-left:0}.gateway-choice:hover,.gateway-choice:focus-visible{flex-grow:1}.gateway-grid:has(.gateway-choice:hover) .gateway-choice:not(:hover){flex-grow:1}.gateway-label{gap:5px;top:82px}.gateway-label span:first-child{display:none}.gateway-content{column-gap:11px;bottom:25px;left:20px;right:20px}.gateway-number{font-size:8px}.gateway-title{white-space:normal;margin-top:12px;font-size:clamp(46px,13.5vw,67px)}.gateway-business .gateway-title{font-size:clamp(42px,12vw,60px)}.gateway-description{max-width:calc(100% - 74px);margin-top:14px;font-size:10px;line-height:1.45}.gateway-enter{width:56px;height:56px;bottom:-2px;right:0}.gateway-enter i{font-size:9px}.gateway-enter b{font-size:9px;top:6px;right:10px}.gateway-footnote{display:none}.audience-gateway.is-leaving .gateway-choice.is-selected{flex-grow:100;flex-basis:100%}.audience-gateway.is-leaving .gateway-choice.is-rejected{flex-grow:0;flex-basis:0}.gateway-business>img{object-position:center 48%}.intro-meta{gap:7px;display:grid;bottom:54px}.intro-progress{bottom:31px;left:20px;right:20px}.intro-mark{gap:12px}.intro-mark strong{font-size:100px}.intro-mark span{font-size:8px}.menu-panel{border-radius:18px;grid-template-rows:70px 1fr 82px;height:calc(100svh - 12px);min-height:560px;inset:6px 6px auto}.menu-top,.menu-bottom{padding-inline:15px}.menu-caption{display:none}.menu-top{grid-template-columns:1fr auto}.menu-stage nav a{height:54px;font-size:clamp(37px,11vw,50px)}.menu-stage nav a.is-active{transform:translate(5px)}.menu-photo-reel{gap:11px;width:124vw;left:-12vw}.menu-photo-reel figure{border-radius:6px;width:70px;height:55px}.menu-photo-reel figure:nth-child(2),.menu-photo-reel figure:nth-child(5){width:88px;height:61px}.menu-bottom{grid-template-columns:1fr;align-content:center;gap:5px}.menu-bottom>*{text-align:left!important}.hero{min-height:0;padding-top:70px;display:block}.hero-copy{min-height:690px;padding:80px 16px}.overline{margin-bottom:63px}.hero h1{font-size:clamp(56px,17vw,82px);line-height:.86}.hero-lead{max-width:95%;margin-top:42px;font-size:16px}.audience-return{margin-top:24px}.hero-actions{gap:20px;margin-top:34px}.button-primary{min-width:190px}.hero-media{height:72svh;min-height:520px}.hero-media figcaption{top:24px;left:18px;right:18px}.hero-media>a{width:auto;bottom:16px;left:16px;right:16px}.hero-scroll{display:none}.brand-strip{padding:34px 0}.brand-row>div{grid-template-columns:1fr 1fr;gap:17px}.brand-row span{font-size:14px}.expertise-section,.projects-section,.services-section,.direction-section,.agency-section,.contact-section{padding:95px 0 105px}.expertise-heading,.projects-heading,.services-grid,.direction-grid,.agency-content,.contact-grid{grid-template-columns:1fr;gap:35px}.expertise-heading h2,.projects-heading h2,.services-title h2,.direction-grid>h2,.agency-content h2,.contact-grid h2{font-size:clamp(46px,13vw,67px)}.expertise-grid{grid-template-columns:1fr;gap:50px;margin-top:58px}.expertise-photo,.expertise-photo img{min-height:520px}.expertise-lead{font-size:25px}.expertise-columns{gap:22px}.projects-heading>p:last-child{grid-column:auto}.projects-grid{grid-template-columns:1fr;gap:68px;margin-top:58px}.project-card:nth-child(2),.project-card:nth-child(4){margin-top:0}.project-wide figure,.project-narrow figure{aspect-ratio:1/1.05}.project-overlay{padding:19px}.project-overlay strong{font-size:50px}.project-info{grid-template-columns:1fr;gap:16px}.project-info span{text-align:left}.services-title{position:static}.services-title>p:last-child{margin-top:30px}.services-list{margin-top:25px}.services-list article{grid-template-columns:32px 1fr;min-height:0;padding:27px 0 32px}.services-list a{display:none}.services-list h3{font-size:28px}.direction-steps,.agency-copy,.agency-link{grid-column:auto}.direction-steps{grid-template-columns:1fr;margin-top:25px}.direction-steps article{min-height:210px}.direction-steps h3{margin-top:70px}.agency-section{min-height:0}.agency-signal{font-size:240px;bottom:-10px;right:-35px}.agency-signal i{width:72px;height:72px}.agency-copy{grid-template-columns:1fr;gap:35px;margin-top:25px}.agency-copy>p{font-size:17px}.agency-link{margin-top:20px}.contact-grid>div>p{margin:34px 0 50px;font-size:16px}.contact-mail{padding:20px 0;font-size:clamp(21px,6.4vw,32px)}.contact-meta{grid-template-columns:1fr;gap:12px}.contact-meta>*{text-align:left!important}.footer-grid{grid-template-columns:1fr;gap:28px}}@media (max-width:820px) and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}


.site-intro{background:#213dd3;animation:introFailSafe .82s 2.5s var(--ease) forwards}
.intro-logo-frame{position:relative;width:min(680px,78vw);aspect-ratio:3957/1351;transform-origin:center;animation:introEditorialFrame 1.05s .08s var(--ease) both}
.intro-logo-frame::before,.intro-logo-frame::after{content:"";position:absolute;inset:0;background:var(--intro-logo) center/contain no-repeat;pointer-events:none}
.intro-logo-frame::before{clip-path:inset(0 48% 0 0);animation:introMarkLeft 1.28s .14s var(--ease) both}
.intro-logo-frame::after{clip-path:inset(0 0 0 52%);animation:introMarkRight 1.28s .28s var(--ease) both}
.intro-signature{position:absolute;right:34px;bottom:36px;left:34px;color:rgba(255,255,255,.58);font-size:12px;font-weight:560;letter-spacing:.09em;text-align:center;text-transform:uppercase;animation:introEditorialSignature .7s .94s var(--ease) both}
@keyframes introEditorialFrame{from{transform:scale(.975)}to{transform:scale(1)}}
@keyframes introMarkLeft{0%{opacity:0;filter:blur(11px);transform:translateY(22px)}100%{opacity:1;filter:blur(0);transform:none}}
@keyframes introMarkRight{0%{opacity:0;filter:blur(11px);transform:translateY(-18px)}100%{opacity:1;filter:blur(0);transform:none}}
@keyframes introEditorialSignature{from{opacity:0;letter-spacing:.18em;transform:translateY(6px)}to{opacity:1;letter-spacing:.09em;transform:none}}
@media(max-width:560px){.intro-logo-frame{width:min(430px,88vw)}.intro-signature{right:20px;bottom:31px;left:20px;font-size:9px;line-height:1.45;letter-spacing:.075em}}
@media (max-width:820px) and (prefers-reduced-motion:reduce){.intro-logo-frame,.intro-logo-frame::before,.intro-logo-frame::after,.intro-signature{animation:none!important;opacity:1;filter:none;transform:none}}


.gateway-brand-logo{display:none;width:178px;aspect-ratio:3957/1351;background-position:center;background-repeat:no-repeat;background-size:contain}
.site-header.on-gateway .brand>strong,.site-header.on-gateway .brand>span:not(.gateway-brand-logo){display:none}
.site-header.on-gateway .gateway-brand-logo{display:block}
.site-header.on-gateway .header-contact{display:none}
.gateway-content{display:flex;flex-direction:column;align-items:flex-start;right:clamp(30px,4vw,68px);bottom:clamp(58px,6.6vw,104px);left:clamp(30px,4vw,68px)}
.gateway-number{display:none}
.gateway-title{margin:0;font-size:clamp(56px,8.4cqw,90px);font-weight:560;line-height:.92;letter-spacing:-.032em;white-space:normal;text-shadow:0 2px 24px rgba(0,0,0,.26)}
.gateway-description{max-width:520px;margin-top:21px;color:rgba(255,255,255,.86);font-size:14px;line-height:1.45;letter-spacing:.005em;text-shadow:0 1px 14px rgba(0,0,0,.2)}
.gateway-enter{position:relative;right:auto;bottom:auto;display:inline-flex;width:auto;min-width:218px;height:auto;margin-top:25px;padding:13px 15px;gap:26px;align-items:center;justify-content:space-between;color:#fff;background:rgba(7,13,25,.3);border:1px solid rgba(255,255,255,.58);border-radius:0;transform:none;backdrop-filter:blur(7px)}
.gateway-enter i{font-size:12px;font-style:normal;font-weight:610;letter-spacing:.005em}
.gateway-enter b{display:block;width:auto;height:auto;color:var(--lime);border:0;border-radius:0;font-size:13px;line-height:1;transition:transform .4s var(--ease)}
.gateway-choice:hover .gateway-enter,.gateway-choice:focus-visible .gateway-enter{color:var(--ink);background:var(--lime);border-color:var(--lime);transform:none}
.gateway-choice:hover .gateway-enter b,.gateway-choice:focus-visible .gateway-enter b{color:var(--ink);background:transparent;border:0;transform:translate(3px,-3px)}
.gateway-shade{background:linear-gradient(180deg,rgba(4,9,20,.2) 0%,rgba(4,9,20,.02) 42%,rgba(4,9,20,.76) 100%)}
.gateway-hotels img{filter:saturate(1.02) brightness(1) contrast(1.03)}
.gateway-business img{filter:saturate(1.06) brightness(1.03) contrast(1.04)}
.gateway-hotels .gateway-shade{background:linear-gradient(180deg,rgba(4,9,20,.12) 0%,rgba(4,9,20,0) 42%,rgba(4,9,20,.7) 100%)}
@media(min-width:821px) and (hover:hover){.gateway-grid{overflow:hidden}.gateway-grid .gateway-choice{flex:0 0 50%!important;transform:translateZ(0) scaleX(1);backface-visibility:hidden;will-change:transform;contain:paint;transition:transform .72s cubic-bezier(.2,.78,.2,1),opacity .42s ease,clip-path 1.05s var(--ease)}.gateway-hotels{transform-origin:left center}.gateway-business{transform-origin:right center}.gateway-content{will-change:transform;transition:transform .72s cubic-bezier(.2,.78,.2,1),opacity .42s ease}.gateway-grid:has(.gateway-hotels:hover) .gateway-hotels,.gateway-grid:has(.gateway-hotels:focus-visible) .gateway-hotels{transform:translateZ(0) scaleX(1.04)}.gateway-grid:has(.gateway-hotels:hover) .gateway-business,.gateway-grid:has(.gateway-hotels:focus-visible) .gateway-business{transform:translateZ(0) scaleX(.96)}.gateway-grid:has(.gateway-business:hover) .gateway-business,.gateway-grid:has(.gateway-business:focus-visible) .gateway-business{transform:translateZ(0) scaleX(1.04)}.gateway-grid:has(.gateway-business:hover) .gateway-hotels,.gateway-grid:has(.gateway-business:focus-visible) .gateway-hotels{transform:translateZ(0) scaleX(.96)}.gateway-grid:has(.gateway-hotels:hover) .gateway-hotels .gateway-content,.gateway-grid:has(.gateway-hotels:focus-visible) .gateway-hotels .gateway-content,.gateway-grid:has(.gateway-business:hover) .gateway-business .gateway-content,.gateway-grid:has(.gateway-business:focus-visible) .gateway-business .gateway-content{transform:scaleX(.96154)}.gateway-grid:has(.gateway-hotels:hover) .gateway-business .gateway-content,.gateway-grid:has(.gateway-hotels:focus-visible) .gateway-business .gateway-content,.gateway-grid:has(.gateway-business:hover) .gateway-hotels .gateway-content,.gateway-grid:has(.gateway-business:focus-visible) .gateway-hotels .gateway-content{transform:scaleX(1.04167)}.gateway-hotels .gateway-content{transform-origin:left bottom}.gateway-business .gateway-content{transform-origin:right bottom}}
@media(max-width:820px){.gateway-brand-logo{width:150px}.gateway-content{right:20px;bottom:24px;left:20px}.gateway-title{font-size:clamp(40px,11.7vw,58px);letter-spacing:-.022em}.gateway-description{max-width:100%;margin-top:9px;font-size:10px}.gateway-enter{min-width:185px;margin-top:12px;padding:9px 11px;gap:20px}.gateway-enter i{font-size:9px}.gateway-enter b{font-size:10px}}
@media(max-width:420px){.gateway-title{font-size:clamp(37px,10.9vw,50px)}.gateway-description{font-size:9px}.gateway-enter{min-width:170px;margin-top:9px;padding:8px 10px}}
@media (max-width:820px) and (prefers-reduced-motion:reduce){.gateway-choice,.gateway-content{transform:none!important;transition:none!important}}


.menu-panel{grid-template-rows:92px minmax(0,1fr) 118px;background:#08121d;will-change:transform}
.menu-panel .menu-top{display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 28px;border-bottom:1px solid rgba(255,255,255,.11)}
.menu-panel .menu-brand{display:block;width:190px;height:66px;background-position:left center;background-repeat:no-repeat;background-size:contain}
.menu-panel .menu-close{position:relative;top:auto;right:auto;width:48px;height:48px;transition:background-color .25s ease,border-color .25s ease,transform .25s ease}
.menu-panel .menu-close:hover{background:var(--lime);border-color:var(--lime);transform:rotate(4deg)}
.menu-panel .menu-close:hover i{background:#08121d}
.menu-panel .menu-stage{display:flex;align-items:center;justify-content:center;padding:24px 8vw;overflow:auto}
.menu-panel .menu-stage nav{position:relative;top:auto;left:auto;transform:none;width:min(880px,100%);display:grid}
.menu-panel .menu-stage nav a{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:16px;height:auto;min-height:76px;padding:0 8px;border-bottom:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.62);font-size:inherit;letter-spacing:normal;opacity:1;transform:none;transition:color .25s ease,padding .35s cubic-bezier(.18,.82,.2,1),border-color .25s ease}
.menu-panel .menu-stage nav a:first-child{border-top:1px solid rgba(255,255,255,.14)}
.menu-panel .menu-stage nav a small{align-self:center;color:var(--lime);font-family:var(--font-geist-mono),monospace;font-size:9px;font-weight:650;letter-spacing:.14em}
.menu-panel .menu-stage nav a span{color:inherit;background:transparent;border-radius:0;padding:0;font-size:clamp(36px,4.4vw,66px);font-weight:570;line-height:.95;letter-spacing:-.045em}
.menu-panel .menu-stage nav a.is-active span{color:inherit;background:transparent}
.menu-panel .menu-stage nav a::after{content:'';width:12px;height:12px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;font-size:0;color:rgba(255,255,255,.32);opacity:0;transform:translate(-8px,8px);transition:opacity .25s ease,transform .35s cubic-bezier(.18,.82,.2,1)}
.menu-panel .menu-stage nav a:is(:hover,:focus-visible,.is-active){color:#fff;padding-left:20px;border-color:rgba(218,255,71,.55)}
.menu-panel .menu-stage nav a:is(:hover,:focus-visible,.is-active)::after{opacity:1;transform:none;color:var(--lime)}
.menu-panel .menu-bottom{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:28px;padding:18px 28px;border-top:1px solid rgba(255,255,255,.11);text-transform:none}
.menu-panel .menu-contact{display:flex;flex-direction:column;gap:3px;width:max-content;transition:opacity .2s ease}
.menu-panel .menu-contact:hover{opacity:.76}
.menu-panel .menu-contact small{color:var(--lime);font-family:var(--font-geist-mono),monospace;font-size:8px;font-weight:650;letter-spacing:.15em;text-transform:uppercase}
.menu-panel .menu-contact span{color:#fff;font-size:clamp(16px,1.55vw,23px);font-weight:520;letter-spacing:-.025em;text-transform:none}
.menu-panel .menu-phone{justify-self:end;text-align:right}
.menu-panel a:focus-visible,.menu-panel button:focus-visible{outline:2px solid var(--lime);outline-offset:5px}
@media(max-width:820px){
  .menu-panel{grid-template-rows:72px minmax(0,1fr) 132px}
  .menu-panel .menu-top{padding:0 18px}
  .menu-panel .menu-brand{width:154px;height:54px}
  .menu-panel .menu-close{width:42px;height:42px}
  .menu-panel .menu-stage{align-items:center;padding:14px 20px}
  .menu-panel .menu-stage nav a{grid-template-columns:32px 1fr auto;gap:8px;min-height:58px;padding:0 4px}
  .menu-panel .menu-stage nav a span{font-size:clamp(29px,8.8vw,44px);letter-spacing:-.035em}
  .menu-panel .menu-stage nav a:is(:hover,:focus-visible,.is-active){padding-left:10px}
  .menu-panel .menu-stage nav a::after{font-size:15px}
  .menu-panel .menu-bottom{grid-template-columns:1fr;align-content:center;gap:12px;padding:14px 20px}
  .menu-panel .menu-phone{justify-self:start;text-align:left}
  .menu-panel .menu-contact span{font-size:16px}
}
@media(max-height:760px) and (min-width:821px){.menu-panel .menu-stage nav a{min-height:60px}.menu-panel .menu-stage nav a span{font-size:clamp(32px,3.8vw,54px)}}
@media (max-width:820px) and (prefers-reduced-motion:reduce){.menu-panel,.menu-panel *{transition-duration:.01ms!important}}


/* Lżejsze renderowanie bez zmiany kompozycji strony. */
main>section,.site-footer{content-visibility:auto;contain-intrinsic-size:900px;contain:layout style paint}
.site-header.is-solid{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(244,243,239,.98)}
.site-header.on-gateway .menu-trigger,.gateway-enter{-webkit-backdrop-filter:none;backdrop-filter:none}
.gateway-choice>img{will-change:transform;transition:transform .72s var(--ease)!important}
.gateway-choice:hover>img,.gateway-choice:focus-visible>img{filter:inherit}
.gateway-grid .gateway-choice{transition-duration:.58s,.3s,.3s,.72s!important}
.gateway-grid:has(.gateway-hotels:hover) .gateway-hotels,.gateway-grid:has(.gateway-hotels:focus-visible) .gateway-hotels,.gateway-grid:has(.gateway-business:hover) .gateway-business,.gateway-grid:has(.gateway-business:focus-visible) .gateway-business{transform:translate3d(0,0,0) scaleX(1.018)}
.gateway-grid:has(.gateway-hotels:hover) .gateway-business,.gateway-grid:has(.gateway-hotels:focus-visible) .gateway-business,.gateway-grid:has(.gateway-business:hover) .gateway-hotels,.gateway-grid:has(.gateway-business:focus-visible) .gateway-hotels{transform:translate3d(0,0,0) scaleX(.982)}
.gateway-grid .gateway-content{transform:none!important;transition:opacity .3s ease!important;will-change:auto}
.menu-panel{will-change:auto;transition:transform .62s var(--ease),visibility 0s .64s;transform:translate3d(0,calc(-100% - 18px),0) scale(.992)}
.menu-panel.is-open{will-change:transform;transform:translate3d(0,0,0)}
.intro-logo-frame::before,.intro-logo-frame::after{will-change:transform,opacity}
@keyframes introMarkLeft{0%{opacity:0;transform:translate3d(0,22px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes introMarkRight{0%{opacity:0;transform:translate3d(0,-18px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@media(max-width:820px){main>section,.site-footer{contain-intrinsic-size:760px}.gateway-choice>img{will-change:auto}.menu-panel{transition-duration:.5s}}


.gateway-proof{z-index:7;position:absolute;right:auto;bottom:24px;left:50%;width:min(1180px,calc(100vw - 96px));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));color:#fff;background:rgba(5,11,22,.76);border:1px solid rgba(255,255,255,.24);opacity:0;pointer-events:none;transform:translateX(-50%);transition:opacity .28s ease}
.audience-gateway.is-ready .gateway-proof{opacity:1}
.audience-gateway.is-leaving .gateway-proof{opacity:0}
.gateway-proof>div{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:72px;padding:11px 24px}
.gateway-proof>div+div{border-left:1px solid rgba(255,255,255,.2)}
.gateway-proof>div:nth-child(2){align-items:center;text-align:center}
.gateway-proof>div:nth-child(3){align-items:flex-end;text-align:right}
.gateway-proof strong{font-size:clamp(14px,1vw,16px);font-weight:650;line-height:1.1;letter-spacing:-.018em}
.gateway-proof span{margin-top:5px;color:rgba(255,255,255,.68);font-size:9px;font-weight:540;line-height:1.2;letter-spacing:.04em;text-transform:uppercase}
@media(min-width:821px){.gateway-content{bottom:clamp(132px,12vw,168px)}}
@media(max-height:760px) and (min-width:821px){.gateway-content{bottom:112px}.gateway-proof{bottom:12px}.gateway-proof>div{min-height:56px}.gateway-proof span{display:none}}
@media(max-width:820px){
  .gateway-proof{top:50%;right:0;bottom:auto;left:0;width:auto;grid-template-columns:repeat(3,minmax(0,1fr));background:#08121d;border-width:1px 0;transform:translateY(-50%)}
  .gateway-proof>div{align-items:center;min-height:48px;padding:7px 6px;text-align:center}
  .gateway-proof>div:nth-child(3){align-items:center;text-align:center}
  .gateway-proof strong{font-size:8px;line-height:1.25;letter-spacing:.015em;text-transform:uppercase}
  .gateway-proof span{display:none}
}


/* Właściwe logo także na jasnym hero. */
.site-header .brand>strong,.site-header .brand>span:not(.gateway-brand-logo){display:none}
.site-header .gateway-brand-logo{display:block}
.site-header:not(.on-gateway) .gateway-brand-logo{filter:brightness(0) saturate(100%) invert(25%) sepia(92%) saturate(4860%) hue-rotate(232deg) brightness(88%) contrast(99%)}
.site-header .header-contact{display:none!important}

/* Przejście: wybrany kierunek przejmuje ekran przed odsłonięciem strony. */
.audience-gateway.is-leaving .gateway-choice{transition:flex-basis .74s var(--ease),opacity .38s ease,transform .74s var(--ease)!important}
.audience-gateway.is-leaving .gateway-choice.is-selected{flex:0 0 100%!important;opacity:1;transform:translate3d(0,0,0) scaleX(1)}
.audience-gateway.is-leaving .gateway-choice.is-rejected{flex:0 0 0!important;opacity:0;border:0;transform:translate3d(0,0,0) scaleX(.98)}
.audience-gateway.is-leaving .gateway-choice.is-selected>img{transform:scale(1.01)}
.audience-gateway.is-settling{background:transparent}
.audience-gateway.is-settling .gateway-proof{opacity:0}
@media(min-width:821px){
  .audience-gateway.is-settling .gateway-grid{pointer-events:none}
  .audience-gateway.is-settling .gateway-choice.is-selected{flex:0 0 44%!important;margin-left:56%;transition:flex-basis .78s var(--ease),margin-left .78s var(--ease),transform .78s var(--ease)!important}
  .audience-gateway.is-settling .gateway-choice.is-selected>img{transform:scale(1);transition:transform .78s var(--ease)!important}
}

/* Hero przygotowane pod język sprzedaży hotelowej. */
.hotel-hero .hero-copy{position:relative;z-index:2;justify-content:center;padding-top:124px;padding-bottom:84px}
.hotel-hero .overline{margin-bottom:42px;color:var(--blue);font-size:10px;font-weight:680;letter-spacing:.13em}
.hotel-hero h1{font-size:clamp(50px,3.8vw,60px);line-height:.95;letter-spacing:-.032em}
.hotel-hero .hero-lead{max-width:650px;min-height:0;margin-top:34px;color:#50535c;font-size:18px;line-height:1.55;letter-spacing:-.006em}
.hero-signals{max-width:660px;margin-top:27px;padding-top:0;border-top:0}
.hero-signals p{margin:0}
.hero-specialisms{color:var(--ink);font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:630;line-height:1.6;letter-spacing:.075em;text-transform:uppercase}
.hero-proof{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 12px;margin-top:9px!important;padding-top:0;border-top:0}
.hero-proof small{color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.hero-proof span{color:var(--ink);font-size:13px;font-weight:650;letter-spacing:.008em}
.hotel-hero .audience-return{margin:0 0 42px;padding:0;border-bottom:0;font-size:11px;color:var(--muted);transition:color .28s ease}
.hotel-hero .audience-return:hover{color:var(--ink)}
.hotel-hero .audience-return span{color:var(--blue);font-weight:700}
.hotel-hero .hero-actions{margin-top:28px;gap:24px}
.hotel-hero .button-primary{min-width:286px}
.hotel-hero .button-primary .button-label,.hotel-hero .button-text .button-label{color:inherit;font-size:inherit}
.button-text .button-label{color:inherit}
.hotel-hero .hero-media>img{object-position:center center;filter:saturate(1.02) brightness(1) contrast(1.03)}
.hotel-hero .hero-media::after{background:linear-gradient(180deg,rgba(4,9,20,.12) 0%,rgba(4,9,20,0) 42%,rgba(4,9,20,.7) 100%);box-shadow:inset 0 0 0 999px rgba(37,63,218,.09)}
.hotel-hero .hero-media figcaption,.hotel-hero .hero-media>a{display:none}
.header-contact{display:none!important}
.h-contact-location{display:block;margin-top:28px;color:rgba(255,255,255,.58);font-family:var(--font-geist-mono),monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase}

/* Spokojny, monochromatyczny loop marek hotelowych pod hero. */
.hotel-logo-strip{position:relative;padding:0;overflow:hidden;background:#eeede8;border-top:1px solid rgba(16,17,22,.1);border-bottom:1px solid rgba(16,17,22,.1)}
body.audience-business .hotel-logo-strip{display:block}
.logo-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.logo-track{display:flex;width:max-content;will-change:transform;animation:hotelLogoMarquee 34s linear infinite}
.logo-set{display:flex;flex:none;align-items:center;gap:clamp(52px,6vw,102px);padding:0 clamp(28px,3.2vw,54px)}
.logo-item{display:grid;place-items:center;flex:0 0 200px;height:118px;margin:0;overflow:hidden}
.logo-item img{width:auto;height:auto;max-width:180px;max-height:58px;object-fit:contain;filter:grayscale(1) contrast(.78);opacity:.56;mix-blend-mode:multiply}
.logo-hilton img{max-height:66px}.logo-radisson img{max-width:190px}.logo-zdrojowa img{max-width:184px}.logo-bestwestern img{max-width:174px}.logo-spark img{max-width:150px}.logo-hampton img{width:128px;height:72px;max-width:none;max-height:none;object-fit:contain}
.logo-marquee:hover .logo-track{animation-play-state:paused}
@keyframes hotelLogoMarquee{to{transform:translate3d(-50%,0,0)}}

/* Wyraźny, ale spokojny sygnał do przewinięcia. */
.hotel-hero .hero-scroll{z-index:6;bottom:28px;left:clamp(40px,6vw,96px);display:inline-flex;align-items:center;gap:15px;color:var(--ink);font-size:10px;font-weight:650;letter-spacing:.13em;text-transform:uppercase}
.hotel-hero .hero-scroll i{position:relative;display:grid;place-items:center;width:42px;height:42px;background:transparent;border:1px solid rgba(16,17,22,.42);border-radius:50%;overflow:hidden}
.hotel-hero .hero-scroll i::before{content:'↓';font-family:Arial,sans-serif;font-size:15px;font-style:normal;line-height:1;animation:premiumScrollArrow 1.75s var(--ease) infinite}
.hotel-hero .hero-scroll i::after{content:'';position:absolute;inset:5px;border:1px solid rgba(37,63,218,.32);border-radius:50%;animation:premiumScrollRing 2.4s ease-out infinite}
.hotel-hero .hero-scroll:hover i{color:#fff;background:var(--blue);border-color:var(--blue)}
@keyframes premiumScrollArrow{0%,100%{opacity:.55;transform:translateY(-4px)}50%{opacity:1;transform:translateY(4px)}}
@keyframes premiumScrollRing{0%{opacity:.8;transform:scale(.72)}70%,100%{opacity:0;transform:scale(1.2)}}

/* Świeże wejście treści uruchamiane dopiero po wybraniu kierunku. */
.hero.is-entering .hero-copy{animation:hotelPanelReveal .82s var(--ease) both}
.hero.is-entering .hero-copy>*{animation:hotelCopyReveal .62s var(--ease) both}
.hero.is-entering .hero-copy>:nth-child(2){animation-delay:.08s}
.hero.is-entering .hero-copy>:nth-child(3){animation-delay:.14s}
.hero.is-entering .hero-copy>:nth-child(4){animation-delay:.2s}
.hero.is-entering .hero-copy>:nth-child(5){animation-delay:.26s}
.hero.is-entering .hero-copy>:nth-child(6){animation-delay:.32s}
@keyframes hotelPanelReveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@keyframes hotelCopyReveal{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translate3d(0,0,0)}}

@media(max-width:1100px) and (min-width:821px){
  .hotel-hero .hero-copy{padding-right:42px;padding-left:42px}
  .hotel-hero h1{font-size:clamp(46px,5vw,56px);letter-spacing:-.035em}
  .hotel-hero .hero-lead{font-size:16px}
  .hero-proof{display:block}.hero-proof span{display:block;margin-top:5px}
}
@media(max-width:820px){
  .site-header:not(.on-gateway) .gateway-brand-logo{width:150px}
  .hotel-hero .hero-copy{min-height:760px;padding:112px 20px 78px}
  .hotel-hero .audience-return{margin-bottom:45px}
  .hotel-hero h1{font-size:clamp(45px,12vw,60px);line-height:.95;letter-spacing:-.032em}
  .hotel-hero .hero-lead{margin-top:26px;font-size:16px}
  .hero-signals{margin-top:24px;padding-top:0}
  .hero-specialisms{font-size:8px}
  .hero-proof{display:block;margin-top:9px!important;padding-top:0}
  .hero-proof span{display:block;margin-top:5px;font-size:10px;line-height:1.4}
  .hotel-hero .hero-actions{align-items:flex-start}
  .hotel-hero .button-primary{width:100%;min-width:0}
  .hotel-hero .hero-media{min-height:620px}
  .hotel-hero .hero-scroll{right:20px;bottom:22px;left:auto;color:#fff;font-size:9px;text-shadow:0 1px 12px rgba(0,0,0,.45)}
  .hotel-hero .hero-scroll i{border-color:rgba(255,255,255,.68)}
  .audience-gateway.is-settling{opacity:0;transition:opacity .52s ease}
  .hero.is-entering .hero-copy{animation-duration:.62s}
  .logo-track{animation-duration:27s}
  .logo-set{gap:38px;padding-inline:20px}
  .logo-item{flex-basis:154px;height:92px}
  .logo-item img{max-width:142px;max-height:48px}.logo-hilton img{max-height:53px}.logo-radisson img{max-width:150px}.logo-zdrojowa img{max-width:145px}.logo-bestwestern img{max-width:138px}.logo-spark img{max-width:120px}.logo-hampton img{width:104px;height:58px;max-width:none;max-height:none}
}
@media (max-width:820px) and (prefers-reduced-motion:reduce){.hero.is-entering .hero-copy,.hero.is-entering .hero-copy>*{animation:none!important}.logo-track{animation:none!important;transform:none}.logo-set[aria-hidden="true"]{display:none}.logo-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}


.h-section{position:relative;padding:clamp(118px,10vw,180px) 0;overflow:hidden}
.h-kicker{margin:0;color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:9px;font-weight:680;line-height:1.4;letter-spacing:.13em;text-transform:uppercase}
.h-display{margin:0;font-size:clamp(58px,6.2vw,96px);font-weight:570;line-height:.9;letter-spacing:-.055em}
.h-display em{color:var(--blue);font-style:normal}
.h-body{margin:0;color:var(--muted);font-size:18px;line-height:1.58;letter-spacing:-.01em}

/* Podejście: ten sam system typograficzny co HERO, fotografia i czyste fakty. */
.h-approach{background:var(--paper)}
.h-approach-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(340px,.68fr);gap:clamp(70px,9vw,150px);align-items:end}
.h-approach-copy{padding-bottom:clamp(30px,5vw,74px)}
.h-approach .h-display{margin-top:clamp(54px,6vw,92px)}
.h-approach .h-display{max-width:650px;font-size:clamp(50px,3.8vw,60px);font-weight:510;line-height:.95;letter-spacing:-.032em}
.h-approach .h-display em{font-weight:730}
.h-approach .h-kicker{font-size:10px;font-weight:680;letter-spacing:.13em}
.h-facts{max-width:690px;margin:clamp(36px,3.8vw,58px) 0 0;color:var(--ink);font-size:clamp(23px,2.15vw,34px);line-height:1.25;letter-spacing:-.025em}
.h-approach .h-body{max-width:520px;margin-top:clamp(17px,1.45vw,22px)}
.h-approach-photo{position:relative;min-height:700px;margin:0;overflow:hidden}
.h-approach-photo img{width:100%;height:100%;min-height:700px;object-fit:cover;object-position:center center;filter:saturate(.9) contrast(1.015)}

/* Doświadczenie: scroll-linked typografia zamiast statycznego logo wall. */
.h-experience{padding-bottom:clamp(88px,7vw,118px);color:#fff;background:var(--blue);overflow:clip}
.h-experience .h-kicker,.h-experience .h-display em{color:var(--lime)}
.h-experience-head{display:grid;grid-template-columns:160px minmax(0,1fr) minmax(260px,.38fr);gap:clamp(34px,5vw,82px);align-items:start}
.h-experience-head .h-display{font-size:clamp(50px,3.8vw,60px);font-weight:500;line-height:.96;letter-spacing:-.02em}
.h-experience-head .h-display em{font-weight:680}
.h-experience-head .h-body{max-width:390px;color:#ffffffa6;padding-top:8px}
.h-brand-journey{width:100%;margin:clamp(64px,6vw,94px) 0 0;padding:0}
.h-brand-line{display:flex;align-items:center;min-height:0;margin:0 0 clamp(40px,5vh,72px);overflow:hidden;contain:paint}
.h-brand-line:last-child{margin-bottom:0}
.h-brand-line:nth-child(odd),.h-brand-line:nth-child(even){justify-content:center}
.h-brand-line:nth-child(n){padding-right:0;padding-left:0}
.h-brand-line span{display:block;color:#fff;font-size:clamp(40px,4.05vw,65px);font-weight:560;line-height:.98;letter-spacing:-.01em;white-space:nowrap;opacity:0;clip-path:inset(0 8% 0 0);will-change:transform,opacity,clip-path;backface-visibility:hidden;transform:translate3d(0,0,0)}
.h-brand-line[data-brand="best-western"] span,.h-brand-line[data-brand="hampton"] span{font-size:clamp(38px,3.85vw,61px)}


/* Zasięg kampanii: mapa jest własnym SVG, a nie osadzonym widgetem. */
.h-global{padding:clamp(108px,9vw,154px) 0 clamp(102px,9vw,145px);background:#eeede8;border-bottom:1px solid #10111624}
.h-global-grid{display:grid;grid-template-columns:minmax(280px,.52fr) minmax(0,1.12fr);gap:clamp(65px,8vw,132px);align-items:center}
.h-global-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;padding:10px 0 16px}
.h-global .h-display{margin-top:clamp(42px,5vw,72px);font-size:clamp(50px,3.8vw,60px);font-weight:500;line-height:.98;letter-spacing:-.02em}
.h-global .h-display em{font-weight:680}
.h-global-route{margin:clamp(26px,3vw,42px) 0 0;color:var(--ink);font-size:clamp(18px,1.5vw,23px);font-weight:590;line-height:1.28;letter-spacing:-.018em}
.h-map-stage{position:relative;min-width:0;padding:0 0 14px;isolation:isolate}
.h-map-canvas{position:relative;width:100%;aspect-ratio:1.82/1;overflow:hidden;background:transparent}
.h-globe-canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.h-globe-canvas.is-dragging{cursor:grabbing}
.h-globe-canvas:focus-visible{outline:1px solid var(--blue);outline-offset:-3px}
.h-globe-a11y{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.h-map-tooltip{position:absolute;z-index:3;left:0;top:0;display:block;min-width:0;padding:9px 12px;border-left:3px solid var(--lime);color:#fff;background:var(--ink);opacity:0;transform:translate3d(-50%,calc(-100% - 14px),0);pointer-events:none;transition:opacity .16s ease;will-change:transform}
.h-map-tooltip.is-visible{opacity:1}
.h-map-tooltip strong{font-size:14px;font-weight:630;line-height:1.2;letter-spacing:-.01em}
.h-map-status{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2vw,28px);min-height:44px;padding:6px 2px 0;font-family:var(--font-geist-mono),monospace;font-size:8px;line-height:1.4;letter-spacing:.1em;text-transform:uppercase}
.h-map-status strong{color:var(--ink);font-size:9px;font-weight:700;text-align:left}
.h-globe-instruction{display:inline-flex;align-items:center;gap:11px;color:#10111672}
.h-globe-instruction::before{content:'';width:18px;height:18px;border:1px solid #10111655;border-radius:50%;background:linear-gradient(90deg,transparent 47%,#10111655 48%,#10111655 52%,transparent 53%)}

@media(max-width:1050px){
  .h-global-grid{grid-template-columns:minmax(260px,.48fr) minmax(0,1fr);gap:55px}
}
@media(max-width:760px){
  .h-global{padding:94px 0 92px}
  .h-global-grid{grid-template-columns:1fr;gap:76px}
  .h-global-copy{display:block;padding:0}
  .h-global .h-display{margin-top:38px;font-size:clamp(45px,12vw,60px)}
  .h-global-route{margin-top:28px;font-size:19px}
  .h-map-stage{padding-top:0}
  .h-map-canvas{margin-inline:-8px;width:calc(100% + 16px);aspect-ratio:1.28/1}
  .h-map-tooltip{display:none}
  .h-map-status{min-height:44px;padding-top:5px;align-items:center;justify-content:center;gap:12px;font-size:7px;flex-wrap:wrap}
  .h-map-status strong{max-width:none;font-size:8px;line-height:1.35;text-align:left}
  .h-globe-instruction{gap:8px}.h-globe-instruction::before{width:21px;height:21px}
}
@media (max-width:820px) and (prefers-reduced-motion:reduce){.h-map-tooltip{transition:none!important}}

/* Realizacje: trzy osobne kompozycje zamiast kart. */
.h-cases{background:#eeede8}
.h-cases-head{display:grid;grid-template-columns:160px 1fr;gap:clamp(35px,6vw,92px);align-items:start}
.h-case-list{display:grid;gap:clamp(120px,14vw,220px);margin-top:clamp(100px,12vw,190px)}
.h-case{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.72fr);gap:clamp(48px,7vw,108px);align-items:center}
.h-case:nth-child(2){grid-template-columns:minmax(320px,.72fr) minmax(0,1.2fr)}
.h-case:nth-child(2) figure{grid-column:2;grid-row:1}.h-case:nth-child(2) .h-case-copy{grid-column:1;grid-row:1}
.h-case:nth-child(3){grid-template-columns:minmax(0,1.2fr) minmax(320px,.72fr);max-width:none;margin-left:0}
.h-case figure{position:relative;aspect-ratio:1.32/1;margin:0;overflow:hidden;background:#d9d9d5}
.h-case:nth-child(2) figure{aspect-ratio:1.55/1}.h-case:nth-child(3) figure{aspect-ratio:1.32/1}
.h-case figure::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(5,9,18,.24))}
.h-case img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .5s ease;filter:saturate(.82)}
.h-case:hover img{transform:scale(1.035);filter:saturate(1)}
.h-case h3{margin:0;font-size:clamp(50px,3.8vw,60px);font-weight:610;line-height:.88;letter-spacing:-.055em}
.h-case-lead{margin:45px 0 20px;color:var(--ink);font-size:clamp(23px,2.3vw,34px);line-height:1.14;letter-spacing:-.025em}
.h-case-copy>p:not(.h-case-lead){max-width:510px;margin:0;color:var(--muted);font-size:15px;line-height:1.55}
.h-case-copy>span{display:block;margin-top:35px;padding-top:16px;border-top:1px solid #1011162b;color:var(--ink);font-family:var(--font-geist-mono),monospace;font-size:8px;font-weight:650;line-height:1.6;letter-spacing:.08em}
.h-case-link{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;margin-top:26px;padding:14px 16px;border:1px solid #10111642;color:var(--ink);font-size:12px;font-weight:650;line-height:1;text-decoration:none;transition:color .28s ease,background-color .28s ease,border-color .28s ease}
.h-case-link::after{content:'';width:10px;height:10px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;color:var(--blue);font-size:0;transition:transform .28s var(--ease)}
.h-case-link:hover{color:#fff;background:var(--ink);border-color:var(--ink)}
.h-case-link:hover::after{color:var(--lime);transform:translate3d(3px,-3px,0)}
.h-case-link:focus-visible{outline:2px solid var(--blue);outline-offset:4px}

/* 03 — Lista realnych problemów biznesowych. */
.h-problems{color:#fff;background:#0c141b}
.h-problems .h-kicker,.h-problems .h-display em{color:var(--lime)}
.h-problems-grid{display:grid;grid-template-columns:minmax(340px,.72fr) minmax(0,1fr);gap:clamp(80px,10vw,160px);align-items:start}
.h-problems-title{position:sticky;top:112px}
.h-problem-list{margin:0;padding:0;border-top:1px solid #ffffff35;list-style:none}
.h-problem-list li{display:grid;grid-template-columns:46px 1fr;gap:22px;align-items:baseline;padding:25px 0;border-bottom:1px solid #ffffff35;transition:color .3s ease,padding-left .4s var(--ease)}
.h-problem-list li:hover{color:var(--lime);padding-left:10px}
.h-problem-list span{color:var(--lime);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.1em}
.h-problem-list p{margin:0;font-size:clamp(25px,2.6vw,39px);line-height:1.05;letter-spacing:-.035em}

/* 04 — Kompetencje jako natywny, lekki accordion. */
.h-competencies{background:var(--paper)}
.h-competencies-grid{display:grid;grid-template-columns:minmax(370px,.82fr) minmax(0,1fr);gap:clamp(70px,10vw,160px);align-items:start}
.h-competencies-title{position:sticky;top:112px}
.h-accordion{border-top:1px solid var(--ink)}
.h-accordion details{border-bottom:1px solid #10111642}
.h-accordion summary{display:grid;grid-template-columns:42px 1fr 30px;gap:18px;align-items:center;padding:27px 0;cursor:pointer;list-style:none}
.h-accordion summary::-webkit-details-marker{display:none}
.h-accordion summary span{color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.1em}
.h-accordion summary strong{font-size:clamp(25px,2.5vw,38px);font-weight:590;line-height:1;letter-spacing:-.03em}
.h-accordion summary i{position:relative;width:22px;height:22px;justify-self:end}
.h-accordion summary i::before,.h-accordion summary i::after{content:'';position:absolute;top:10px;left:2px;width:18px;height:1px;background:var(--ink);transition:transform .35s var(--ease)}
.h-accordion summary i::after{transform:rotate(90deg)}.h-accordion details[open] summary i::after{transform:rotate(0)}
.h-accordion details p{margin:-7px 0 27px;padding-left:60px;color:var(--muted);font-size:16px;line-height:1.5}

/* 05 — Warstwa technologiczna bez generycznego dashboardu. */
.h-staygo{color:#fff;background:#081242}
.h-staygo .h-kicker,.h-staygo .h-display em{color:var(--lime)}
.h-staygo-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,.74fr);gap:clamp(70px,9vw,145px);align-items:center}
.h-staygo-copy .h-display{margin-top:58px}.h-staygo-copy .h-body{max-width:610px;margin-top:48px;color:#ffffffb3}.h-staygo-copy .h-staygo-detail{max-width:650px;margin-top:17px}
.h-staygo-tags{margin:45px 0 0;color:#fff;font-family:var(--font-geist-mono),monospace;font-size:9px;line-height:1.7;letter-spacing:.09em}
.h-link-light{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;min-width:190px;margin-top:42px;padding:15px 0;border-bottom:1px solid #ffffff9c;font-size:13px;font-weight:650}.h-link-light span{color:var(--lime)}
.h-data-field{position:relative;aspect-ratio:1/1;border:1px solid #ffffff52;background-image:linear-gradient(#ffffff13 1px,transparent 1px),linear-gradient(90deg,#ffffff13 1px,transparent 1px);background-size:12.5% 12.5%;overflow:hidden}
.h-data-field::before,.h-data-field::after{content:'';position:absolute;background:#ffffff3d}.h-data-field::before{top:50%;right:0;left:0;height:1px}.h-data-field::after{top:0;bottom:0;left:50%;width:1px}
.h-data-top{position:absolute;top:18px;right:20px;left:20px;display:flex;justify-content:space-between;font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.12em}
.h-data-core{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;width:48%;aspect-ratio:1;border:1px solid var(--lime);border-radius:50%;transform:translate(-50%,-50%)}
.h-data-core i{position:absolute;width:78%;height:78%;border:1px solid #ffffff4a;border-radius:50%;animation:hDataPulse 2.8s ease-in-out infinite}
.h-data-core strong{color:var(--lime);text-align:center;font-family:var(--font-geist-mono),monospace;font-size:clamp(13px,1.5vw,21px);line-height:1.2;letter-spacing:.12em}
.h-data-axis{position:absolute;right:18px;bottom:17px;left:18px;display:flex;justify-content:space-between;color:#ffffffa3;font-family:var(--font-geist-mono),monospace;font-size:7px;letter-spacing:.1em}
@keyframes hDataPulse{50%{opacity:.35;transform:scale(.9)}}

/* 06 — Opening: krótko, jasno, z energią koloru marki. */
.h-opening{background:var(--lime)}
.h-opening .h-kicker{color:var(--ink)}.h-opening .h-display em{color:var(--blue)}
.h-opening-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.62fr);gap:clamp(80px,11vw,180px);align-items:end}
.h-opening .h-display{margin-top:55px}
.h-opening-list{border-top:1px solid var(--ink)}
.h-opening-list span{display:block;padding:18px 0;border-bottom:1px solid #1011164a;font-size:clamp(21px,2vw,29px);line-height:1.1;letter-spacing:-.025em}
.h-opening-list p{margin:35px 0 0;font-family:var(--font-geist-mono),monospace;font-size:9px;font-weight:680;letter-spacing:.09em}

/* 07 — Doświadczenie Marcela bez konwencji personal brandu. */
.h-founder{min-height:820px;color:#fff;background:var(--ink)}
.h-founder-mark{position:absolute;right:-.03em;bottom:-.3em;color:#ffffff0a;font-size:min(52vw,780px);font-weight:790;line-height:.8;letter-spacing:-.13em;pointer-events:none}
.h-founder .h-kicker,.h-founder .h-display em{color:var(--lime)}
.h-founder-grid{position:relative;z-index:2;display:grid;grid-template-columns:160px minmax(0,820px);gap:clamp(45px,7vw,105px)}
.h-founder-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;margin-top:75px;color:#ffffffa8;font-size:17px;line-height:1.58}
.h-founder-copy p{margin:0}.h-founder-copy p:first-child{grid-column:1/-1;max-width:600px;color:#fff;font-size:clamp(22px,2.2vw,31px);line-height:1.35}
.h-signature{display:grid;gap:4px;margin-top:70px;padding-top:21px;border-top:1px solid #ffffff4a;width:min(100%,440px)}
.h-signature strong{font-size:16px;font-weight:650}.h-signature span{color:#ffffff80;font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.1em;text-transform:uppercase}

/* Obiekty: czytelny indeks doświadczenia, bez sugestii listy klientów. */
.h-properties{background:#eeede8}
.h-properties-grid{display:grid;grid-template-columns:minmax(370px,.82fr) minmax(0,1fr);gap:clamp(70px,10vw,155px);align-items:start}
.h-properties-title{position:sticky;top:112px}.h-properties-title .h-display{margin-top:55px;font-size:clamp(48px,5.1vw,78px)}
.h-property-list{columns:2;column-gap:44px;margin:0;padding:0;border-top:1px solid var(--ink);list-style:none;counter-reset:properties}
.h-property-list li{break-inside:avoid;counter-increment:properties;display:grid;grid-template-columns:34px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid #10111635;font-size:14px;line-height:1.35}
.h-property-list li::before{content:counter(properties,decimal-leading-zero);color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.08em;padding-top:3px}

/* F&B pozostaje małym przypisem do doświadczenia hotelowego. */
.h-food{color:#fff;background:var(--blue);padding:50px 0}
.h-food .h-kicker{color:var(--lime)}
.h-food-grid{display:grid;grid-template-columns:160px minmax(260px,.7fr) minmax(0,1fr);gap:clamp(35px,6vw,90px);align-items:start}
.h-food-grid>p:nth-child(2){margin:0;font-size:17px;line-height:1.5}
.h-food-grid>div{display:flex;flex-wrap:wrap;gap:9px 20px;color:#ffffffa3;font-family:var(--font-geist-mono),monospace;font-size:8px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase}

/* Business korzysta z tego samego komponentu tickeru co Hospitality. */
.business-logo-set{gap:clamp(56px,7vw,118px)}
.business-logo-item{display:grid;place-items:center;flex:0 0 200px;height:118px;margin:0;overflow:visible}
.business-logo-item img{display:block;width:auto;height:auto;max-width:184px;max-height:64px;object-fit:contain;filter:grayscale(1) contrast(.82);opacity:.62;mix-blend-mode:multiply}
.business-logo-item:nth-child(3) img,.business-logo-item:nth-child(5) img,.business-logo-item:nth-child(7) img{max-height:72px}
body.audience-business .hotel-logo-strip{background:#eeede8}
.route-business .h-approach-photo img{object-position:center center}
.business-only[hidden]{display:none!important}

@media(min-width:761px){
  .route-business .h-approach-grid{align-items:center}
  .route-business .h-approach-copy{align-self:center;padding-bottom:0}
}

/* 08 — Kontakt wyłącznie dla hotelarza. */
.h-contact{color:#fff;background:var(--blue);border-top:1px solid #ffffff35}
.h-contact .h-kicker,.h-contact .h-display em{color:var(--lime)}
.h-contact-grid{display:grid;grid-template-columns:160px minmax(0,1fr);gap:clamp(45px,7vw,110px)}
.h-contact .h-body{margin-top:50px;color:#ffffffb5}
.h-contact-mail{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:75px;padding:24px 0;border-top:1px solid #ffffffa3;border-bottom:1px solid #ffffffa3;font-size:clamp(28px,4.7vw,68px);font-weight:540;line-height:1;letter-spacing:-.045em}
.h-contact-mail i{color:var(--lime);font-style:normal}
.h-contact-phone{display:inline-block;margin-top:28px;color:#fff;font-family:var(--font-geist-mono),monospace;font-size:12px;letter-spacing:.08em}

@media(max-width:1050px){
  .h-display{font-size:clamp(54px,7vw,76px)}
  .h-approach-grid{grid-template-columns:1fr .72fr;gap:55px}.h-approach-photo,.h-approach-photo img{min-height:620px}
  .h-experience-head{grid-template-columns:120px 1fr}.h-experience-head .h-body{grid-column:2;max-width:620px}
  .h-case{grid-template-columns:1.1fr .8fr;gap:55px}.h-case:nth-child(2){grid-template-columns:.8fr 1.1fr}.h-case:nth-child(3){grid-template-columns:.9fr .8fr}
  .h-problems-grid,.h-competencies-grid,.h-properties-grid{grid-template-columns:minmax(300px,.72fr) 1fr;gap:70px}
  .h-staygo-grid{grid-template-columns:1fr .72fr;gap:60px}
  .h-founder-grid,.h-contact-grid{grid-template-columns:120px 1fr}
  .h-food-grid{grid-template-columns:120px 1fr}.h-food-grid>div{grid-column:2}
}

@media(max-width:760px){
  .h-section{padding:98px 0 108px}
  .h-kicker{font-size:8px}
  .h-display{font-size:clamp(48px,13.3vw,66px);line-height:.91;letter-spacing:-.05em}
  .h-body{font-size:16px}
  .h-approach-grid,.h-experience-head,.h-cases-head,.h-case,.h-case:nth-child(2),.h-case:nth-child(3),.h-problems-grid,.h-competencies-grid,.h-staygo-grid,.h-opening-grid,.h-founder-grid,.h-properties-grid,.h-food-grid,.h-contact-grid{grid-template-columns:1fr;gap:0}
  .h-approach-copy{padding-bottom:65px}.h-approach .h-display{max-width:100%;margin-top:48px;font-size:clamp(45px,12vw,60px);line-height:.95;letter-spacing:-.032em}.h-facts{margin-top:72px;font-size:25px}.h-approach .h-body{margin-top:23px}.h-approach-photo,.h-approach-photo img{min-height:540px}
  .h-experience-head .h-display{margin-top:45px;font-size:clamp(45px,12vw,60px)}.h-experience-head .h-body{grid-column:auto;margin-top:36px;font-size:15px}.h-brand-journey{margin-top:60px;padding:0}.h-brand-line{min-height:0;margin-bottom:clamp(34px,7vh,48px);padding-right:0!important;padding-left:0!important}.h-brand-line:nth-child(odd),.h-brand-line:nth-child(even){justify-content:center}.h-brand-line span{max-width:100%;font-size:clamp(30px,9vw,43px);font-weight:550;line-height:1;letter-spacing:0}.h-brand-line[data-brand="best-western"] span,.h-brand-line[data-brand="hampton"] span{font-size:clamp(29px,8.3vw,40px)}
  .h-cases-head .h-display{margin-top:45px}.h-case-list{gap:115px;margin-top:82px}.h-case:nth-child(2) figure,.h-case:nth-child(2) .h-case-copy{grid-column:auto;grid-row:auto}.h-case:nth-child(2) figure{order:0}.h-case:nth-child(2) .h-case-copy{order:1}.h-case figure,.h-case:nth-child(2) figure,.h-case:nth-child(3) figure{aspect-ratio:1/1.06}.h-case-copy{padding-top:36px}.h-case h3{font-size:clamp(45px,12vw,60px)}.h-case-lead{margin-top:34px;font-size:25px}.h-case-copy>span{font-size:7px}
  .h-problems-title,.h-competencies-title,.h-properties-title{position:static}.h-problems-title .h-display,.h-competencies-title .h-display{margin-top:45px}.h-problem-list{margin-top:70px}.h-problem-list li{grid-template-columns:32px 1fr;gap:12px;padding:21px 0}.h-problem-list p{font-size:26px;line-height:1.08}
  .h-accordion{margin-top:70px}.h-accordion summary{grid-template-columns:30px 1fr 25px;gap:10px;padding:23px 0}.h-accordion summary strong{font-size:25px}.h-accordion details p{padding-left:40px;font-size:15px}
  .h-staygo-copy .h-display{margin-top:45px}.h-staygo-copy .h-body{margin-top:38px}.h-staygo-copy .h-staygo-detail{margin-top:14px}.h-staygo-tags{font-size:8px}.h-data-field{margin-top:75px}.h-data-axis{font-size:6px}
  .h-opening .h-display{margin-top:45px}.h-opening-list{margin-top:70px}.h-opening-list span{font-size:22px}.h-opening-list p{line-height:1.6}
  .h-founder{min-height:0}.h-founder-grid>.h-kicker{margin-bottom:45px}.h-founder-copy{grid-template-columns:1fr;gap:24px;margin-top:55px;font-size:16px}.h-founder-copy p:first-child{grid-column:auto;font-size:23px}.h-founder-mark{right:-.08em;bottom:.05em;font-size:78vw}
  .h-properties-title .h-display{margin-top:45px}.h-property-list{columns:1;margin-top:75px}.h-property-list li{padding:14px 0;font-size:13px}
  .h-food{padding:58px 0}.h-food-grid>p:nth-child(2){margin-top:30px}.h-food-grid>div{grid-column:auto;margin-top:28px;gap:8px 15px}
  .business-logo-item{height:92px;font-size:18px}
  .business-logo-set{gap:38px;padding-inline:20px}
  .h-contact-grid>.h-kicker{margin-bottom:45px}.h-contact .h-body{margin-top:38px}.h-contact-mail{margin-top:60px;font-size:clamp(23px,6.8vw,31px)}
}

@media(max-width:820px){
  .h-approach-grid{grid-template-columns:1fr;gap:0}
  .h-approach-copy{padding-bottom:clamp(46px,7vw,58px)}
  .h-approach .h-display{max-width:650px;margin-top:48px;font-size:clamp(45px,7.8vw,60px);line-height:.95;letter-spacing:-.032em}
  .h-experience-head .h-display,.h-global .h-display,.h-case h3{font-size:clamp(45px,7.8vw,60px)}
  .h-facts{max-width:650px;margin-top:clamp(34px,5vw,42px);font-size:clamp(24px,3.25vw,27px)}
  .h-approach .h-body{margin-top:clamp(15px,2.5vw,19px)}
  .h-approach-photo,.h-approach-photo img{width:100%;min-height:0;aspect-ratio:4/5}
  .h-approach-photo img{height:100%;object-fit:cover;object-position:center 48%}
}

@media(min-width:600px) and (max-width:820px){
  .h-approach-photo,.h-approach-photo img{aspect-ratio:4/3}
}

@media (max-width:820px) and (prefers-reduced-motion:reduce){.h-data-core i{animation:none!important}.h-brand-line span{opacity:1!important;transform:none!important;clip-path:none!important;will-change:auto!important}}

/* Final interaction polish: problem index and full-screen navigation */
.h-problem-list span{
  font-size:12px;
  font-weight:700;
}
.h-problem-list p{
  font-style:normal;
  transition:color .3s ease, font-style .3s ease, transform .4s var(--ease);
  transform-origin:left center;
}
.h-problem-list li:is(:hover,:focus-within) p{
  color:var(--lime);
  font-style:italic;
  transform:skewX(-2.5deg);
}

.menu-panel .menu-stage nav a,
.menu-panel .menu-stage nav a:first-child{
  grid-template-columns:1fr auto;
  border:0;
}
.menu-panel .menu-stage nav a small{
  display:none;
}
.menu-panel .menu-stage nav a span{
  transition:color .3s ease, font-style .3s ease, transform .4s var(--ease);
  transform-origin:left center;
}
.menu-panel .menu-stage nav a:is(:hover,:focus-visible,.is-active){
  color:var(--lime);
  border-color:transparent;
}
.menu-panel .menu-stage nav a:is(:hover,:focus-visible,.is-active) span{
  color:var(--lime);
  background:transparent;
  font-style:italic;
  transform:skewX(-2.5deg);
}

@media(max-width:760px){
  .h-problem-list span{font-size:11px}
  .menu-panel .menu-stage nav a{grid-template-columns:1fr auto}
}

/* Dopracowanie kolejnych sekcji Hospitality */
.h-competencies-title .h-display{
  margin-top:0;
  line-height:.94;
  letter-spacing:-.025em;
}
.h-accordion summary span{
  font-size:12px;
  font-weight:700;
}

.h-cases{
  padding-top:clamp(52px,4vw,78px);
}
.h-case-list{
  margin-top:0;
}

.h-global{
  padding-bottom:clamp(70px,5vw,94px);
}
.h-global .h-display{
  margin-top:0;
}

.h-experience-head{
  grid-template-columns:minmax(0,1fr) minmax(260px,.38fr);
}
.h-experience-head .h-body{
  grid-column:auto;
}

.h-staygo-copy .h-display{
  margin-top:0;
  line-height:.94;
  letter-spacing:-.025em;
}
.h-staygo-copy .h-body{
  margin-top:42px;
  letter-spacing:0;
}
.h-staygo-copy .h-staygo-detail{
  margin-top:15px;
}
.h-staygo-window{
  min-height:clamp(460px,36vw,600px);
  border-top:1px solid #ffffff66;
  border-bottom:1px solid #ffffff66;
  display:grid;
  grid-template-rows:auto 1fr auto;
  padding:24px 0 22px;
  overflow:hidden;
}
.h-staygo-window-top,
.h-staygo-window-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:#ffffff8f;
  font-family:var(--font-geist-mono),monospace;
  font-size:8px;
  letter-spacing:.12em;
}
.h-staygo-window-foot i{
  height:1px;
  flex:1;
  background:#ffffff3d;
}
.h-staygo-window-foot strong{
  color:var(--lime);
  font-weight:650;
}
.h-market-signals{
  display:grid;
  align-content:center;
  padding:45px 0;
}
.h-market-signals span{
  display:block;
  padding:21px 0;
  border-bottom:1px solid #ffffff26;
  color:#fff;
  font-size:clamp(30px,3.8vw,58px);
  font-weight:520;
  line-height:.95;
  letter-spacing:-.015em;
  opacity:.42;
  transform:translate3d(0,0,0);
  animation:hMarketSignal 6s ease-in-out infinite;
}
.h-market-signals span:first-child{
  border-top:1px solid #ffffff26;
}
.h-market-signals span:nth-child(2){animation-delay:2s}
.h-market-signals span:nth-child(3){animation-delay:4s}
@keyframes hMarketSignal{
  0%,27%,100%{opacity:.42;transform:translate3d(0,0,0)}
  8%,19%{opacity:1;transform:translate3d(10px,0,0)}
}

.h-opening .h-display{
  margin-top:0;
}

.h-founder{
  min-height:0;
}
.h-founder-grid{
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.58fr);
  gap:clamp(70px,9vw,140px);
  align-items:start;
}
.h-founder-copy{
  margin-top:62px;
}
.h-founder-photo{
  margin:0;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#1b1d22;
}
.h-founder-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 38%;
  filter:saturate(.82) contrast(1.02);
}

.h-properties-title .h-display{
  margin-top:0;
  line-height:.94;
  letter-spacing:-.025em;
}

@media(max-width:1050px){
  .h-experience-head{
    grid-template-columns:minmax(0,1fr) minmax(240px,.52fr);
  }
  .h-founder-grid{
    grid-template-columns:minmax(0,1fr) minmax(280px,.52fr);
    gap:55px;
  }
}

@media(max-width:760px){
  .h-accordion summary span{font-size:11px}
  .h-cases{padding-top:52px}
  .h-global{padding-bottom:64px}
  .h-experience-head{grid-template-columns:1fr}
  .h-experience-head .h-body{grid-column:auto}
  .h-staygo-copy .h-body{margin-top:34px}
  .h-staygo-window{min-height:390px;margin-top:68px}
  .h-market-signals span{font-size:clamp(29px,9vw,42px);padding:18px 0}
  .h-founder-grid{grid-template-columns:1fr;gap:0}
  .h-founder-copy{margin-top:48px}
  .h-founder-photo{margin-top:58px;aspect-ratio:4/5}
}

@media (max-width:820px) and (prefers-reduced-motion:reduce){
  .h-market-signals span{animation:none;opacity:.72;transform:none}
}

/* Experience: stałe copy po lewej, marki pracujące po prawej. */
.h-experience>.page-shell{
  display:grid;
  grid-template-columns:minmax(300px,.68fr) minmax(0,1fr);
  gap:clamp(75px,10vw,160px);
  align-items:start;
}
.h-experience-head{
  display:block;
  position:sticky;
  top:112px;
}
.h-experience-head .h-body{
  max-width:390px;
  margin-top:38px;
  padding-top:0;
}
.h-brand-journey{
  margin-top:0;
  display:grid;
  row-gap:clamp(34px,3.6vw,56px);
}
.h-brand-line{
  min-height:clamp(54px,4.3vw,70px);
  margin:0;
}
.h-brand-line:nth-child(odd){
  justify-content:flex-start;
  padding-left:5%;
}
.h-brand-line:nth-child(even){
  justify-content:flex-end;
  padding-right:5%;
}

/* Staygo: prosty wykres porównania cen zamiast dekoracyjnego interfejsu. */
.h-rate-chart{
  min-height:clamp(430px,35vw,570px);
  display:grid;
  grid-template-rows:auto 1fr;
  align-items:center;
}
.h-rate-chart-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  color:#ffffff9e;
  font-family:var(--font-geist-mono),monospace;
  font-size:8px;
  letter-spacing:.11em;
}
.h-rate-chart-head>span{
  color:#fff;
}
.h-rate-chart-head>div{
  display:flex;
  align-items:center;
  gap:9px;
  white-space:nowrap;
}
.h-rate-chart-head i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--lime);
}
.h-rate-chart-head i:nth-of-type(2){
  margin-left:12px;
  background:#ffffff8c;
}
.h-rate-chart svg{
  width:100%;
  height:auto;
  overflow:visible;
}
.h-chart-grid line{
  stroke:#ffffff1f;
  stroke-width:1;
}
.h-chart-line{
  fill:none;
  stroke-linecap:butt;
  stroke-linejoin:round;
  stroke-width:4;
  stroke-dasharray:900;
  stroke-dashoffset:900;
}
.h-chart-line-hotel{stroke:var(--lime)}
.h-chart-line-market{stroke:#ffffff8c;stroke-width:3}
.h-rate-chart.is-visible .h-chart-line-hotel{animation:hRateDraw 1.8s .18s var(--ease) forwards}
.h-rate-chart.is-visible .h-chart-line-market{animation:hRateDraw 1.8s .42s var(--ease) forwards}
@keyframes hRateDraw{to{stroke-dashoffset:0}}

/* Oddech display typography bez zmiany skali nagłówków. */
.h-problems-title .h-display,
.h-founder .h-display,
.h-contact .h-display{
  letter-spacing:-.015em;
}

.h-opening-grid{
  align-items:center;
}

.h-founder-grid{
  align-items:stretch;
}
.h-founder-content{
  display:flex;
  flex-direction:column;
}
.h-founder-copy{
  grid-template-columns:1fr;
  gap:18px;
  max-width:670px;
}
.h-founder-copy p:first-child{
  grid-column:auto;
}
.h-founder-photo{
  position:relative;
  min-height:620px;
  height:100%;
  aspect-ratio:auto;
}
.h-founder-photo img{
  position:absolute;
  inset:0;
}

.h-contact-grid{
  display:block;
}
.h-contact-grid>div{
  width:min(100%,1120px);
  margin-inline:auto;
}

/* Pełna stopka: marka, nawigacja, SEO i kanały społecznościowe. */
.site-footer{
  padding:76px 0 30px;
  border-radius:0;
}
.footer-top{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:start;
  gap:60px;
  padding-bottom:58px;
  border-bottom:1px solid #ffffff26;
}
.footer-logo{
  display:block;
  width:max-content;
}
.footer-logo span{
  display:block;
  width:205px;
  aspect-ratio:3957/1351;
  background-position:left center;
  background-repeat:no-repeat;
  background-size:contain;
}
.footer-contact{display:grid;justify-items:start;gap:14px}
.footer-mail{
  display:flex;
  align-items:center;
  gap:18px;
  padding-bottom:8px;
  border-bottom:1px solid #ffffff80;
  font-size:15px;
  font-weight:560;
}
.footer-mail span{color:var(--lime)}
.footer-phone{color:#ffffffad;font-size:14px;letter-spacing:.02em;transition:color .25s ease}
.footer-phone:hover,.footer-phone:focus-visible{color:#fff}
.footer-nav{
  display:grid;
  grid-template-columns:.6fr 1.05fr 1.15fr 1.05fr .62fr;
  gap:clamp(30px,4.2vw,70px);
  padding:58px 0 68px;
}
.footer-nav nav{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}
.footer-nav strong{
  margin-bottom:10px;
  color:var(--lime);
  font-family:var(--font-geist-mono),monospace;
  font-size:8px;
  letter-spacing:.13em;
}
.footer-nav a{
  color:#ffffffa8;
  font-size:13px;
  line-height:1.35;
  transition:color .25s ease,transform .35s var(--ease);
}
.footer-nav a:hover,
.footer-nav a:focus-visible{
  color:#fff;
  transform:translateX(4px);
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:28px;
  padding-top:24px;
  border-top:1px solid #ffffff26;
  color:#ffffff65;
  font-family:var(--font-geist-mono),monospace;
  font-size:8px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Kursywa menu bez syntetycznego pogrubienia fontu. */
.menu-panel .menu-stage nav a:is(:hover,:focus-visible,.is-active) span{
  font-style:normal;
  font-weight:570;
  transform:skewX(-4deg);
}

/* Final polish: kompaktowy header, subtelny feedback menu i spokojniejsze intro. */
.site-header.is-solid .gateway-brand-logo{
  width:112px;
}
.menu-trigger i{
  transform-origin:center;
  transition:width .34s var(--ease),transform .34s var(--ease);
}
.menu-trigger:is(:hover,:focus-visible) i:first-of-type{
  width:14px;
  transform:translateX(3px);
}
.menu-trigger:is(:hover,:focus-visible) i:last-of-type{
  width:20px;
  transform:translateX(-3px);
}
.intro-logo-frame{
  width:min(340px,39vw);
}
.intro-progress{
  bottom:76px;
}
.intro-signature{
  bottom:27px;
}

/* Opening: prawdziwe odnośniki zachowujące dotychczasowy rytm listy. */
.h-opening-list a{
  display:block;
  padding:18px 0;
  border-bottom:1px solid #1011164a;
  color:inherit;
  font-size:clamp(21px,2vw,29px);
  line-height:1.1;
  letter-spacing:-.025em;
  text-decoration:none;
  transition:padding-left .32s var(--ease),opacity .32s ease;
}
.h-opening-list a:is(:hover,:focus-visible){
  padding-left:10px;
  opacity:.68;
}

/* Legenda i wykres tworzą jeden zwarty blok. */
.h-rate-chart{
  grid-template-rows:auto auto;
  align-content:center;
  gap:16px;
}

@media(max-width:1050px){
  .h-experience>.page-shell{grid-template-columns:minmax(260px,.65fr) 1fr;gap:62px}
  .h-founder-photo{min-height:560px}
  .footer-top{grid-template-columns:1fr auto}
  .footer-nav{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:760px){
  .h-experience>.page-shell{grid-template-columns:1fr;gap:58px}
  .h-experience-head{position:static}
  .h-brand-journey{row-gap:30px}
  .h-brand-line{min-height:42px;margin:0}
  .h-brand-line:nth-child(odd),.h-brand-line:nth-child(even){justify-content:flex-start;padding-left:0;padding-right:0}
  .h-rate-chart{min-height:330px;margin-top:64px}
  .h-rate-chart-head{align-items:flex-start;flex-direction:column;gap:12px}
  .h-rate-chart svg{margin-top:10px}
  .h-founder-photo{min-height:0;height:auto;aspect-ratio:4/5}
  .h-founder-photo img{position:static}
  .h-contact-grid>div{width:100%}
  .site-footer{padding-top:58px}
  .footer-top{grid-template-columns:1fr;gap:32px;padding-bottom:42px}
  .footer-logo span{width:175px}
  .footer-contact{width:100%}
  .footer-mail{grid-column:auto;width:100%;justify-content:space-between}
  .footer-nav{grid-template-columns:1fr;gap:38px;padding:44px 0 50px}
  .footer-bottom{flex-direction:column;gap:10px}
  .site-header.is-solid .gateway-brand-logo{width:96px}
  .intro-logo-frame{width:min(215px,44vw)}
  .intro-progress{bottom:72px}
  .intro-signature{bottom:22px}
  .h-rate-chart{gap:8px}
  .h-rate-chart svg{margin-top:0}
}

@media (max-width:820px) and (prefers-reduced-motion:reduce){
  .h-chart-line{stroke-dashoffset:0;animation:none}
}

/* Final production polish: stały rytm indeksu marek i tańszy rendering sekcji poza ekranem. */
.h-brand-journey{display:grid;row-gap:clamp(40px,4.4vw,64px)}
.h-brand-line,.h-brand-line:last-child{min-height:clamp(54px,4.3vw,70px);margin:0}
.h-cases,.h-problems,.h-competencies,.h-staygo,.h-opening,.h-founder,.h-properties,.h-contact{content-visibility:auto;contain-intrinsic-size:auto 900px}
@media(max-width:720px){
  .h-brand-journey{row-gap:30px}
  .h-brand-line,.h-brand-line:last-child{min-height:42px;margin:0}
}


/* Mobile production pass — spacing, stable logo color and lighter motion. */
@media (max-width:820px){
  /* Keep the CTA clear of the social-proof divider on the gateway. */
  .gateway-hotels .gateway-content{bottom:44px}
  .gateway-business .gateway-content{bottom:30px}

  /* Exact brand blue on the scrolled header; white while the gateway is open. */
  .site-header .gateway-brand-logo.mobile-logo-mask{
    background-image:none!important;
    background-color:var(--blue);
    -webkit-mask-image:var(--mobile-logo-image);
    mask-image:var(--mobile-logo-image);
    -webkit-mask-position:center;
    mask-position:center;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-size:contain;
    mask-size:contain;
    filter:none!important;
  }
  .site-header.on-gateway .gateway-brand-logo.mobile-logo-mask{background-color:#fff}

  /* Safari/iOS: preserve the marquee but remove expensive compositing effects. */
  .hotel-logo-strip{transform:translateZ(0);contain:layout paint}
  .logo-marquee{-webkit-mask-image:none!important;mask-image:none!important;overflow:hidden}
  .logo-track{
    animation-duration:40s!important;
    animation-timing-function:linear!important;
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    transform:translate3d(0,0,0);
  }
  .logo-item img{
    filter:none!important;
    mix-blend-mode:normal!important;
    opacity:.52;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }

  /* Mobile uses a calmer motion system: no scroll-linked transforms or decorative loops. */
  .h-brand-line span{
    opacity:1!important;
    transform:none!important;
    clip-path:none!important;
    will-change:auto!important;
  }
  .h-market-signals span,
  .h-data-core i,
  .hotel-hero .hero-scroll i::before,
  .hotel-hero .hero-scroll i::after{animation:none!important}
  .gateway-choice>img,.h-case img{transition:none!important;will-change:auto!important}
  [data-reveal]{transition:opacity .34s ease,transform .34s ease}
  .menu-panel{will-change:auto!important}
}
@media (max-width:420px){
  .gateway-hotels .gateway-content{bottom:40px}
}


@media(max-width:820px){
  .business-logo-set{gap:38px;padding-inline:20px}
  .business-logo-item{flex-basis:154px;height:92px}
  .business-logo-item img{max-width:142px;max-height:50px;filter:grayscale(1) contrast(.82)!important;opacity:.62;mix-blend-mode:multiply!important}
  .business-logo-item:nth-child(3) img,.business-logo-item:nth-child(5) img,.business-logo-item:nth-child(7) img{max-height:58px}
}


@media(max-width:820px){
  /* Header: no delayed colour/background interpolation during momentum scroll. */
  .site-header,.site-header.is-solid,.site-header.on-gateway{
    transition:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .site-header:not(.on-gateway){background:transparent!important;border-bottom-color:transparent!important}
  .site-header.is-solid:not(.on-gateway){background:#f4f3ef!important;border-bottom:1px solid rgba(16,17,22,.10)!important;height:70px!important}
  .site-header .gateway-brand-logo.mobile-logo-mask{background-color:#253fda!important;filter:none!important}
  .site-header.on-gateway .gateway-brand-logo.mobile-logo-mask{background-color:#fff!important}

  /* Lightweight ticker: assets are already baked monochrome, so no costly filters/blending. */
  .hotel-logo-strip{contain:none!important;transform:none!important}
  .logo-marquee{overflow:hidden!important;-webkit-mask-image:none!important;mask-image:none!important}
  .logo-track{
    animation:mobileLogoMarquee 22s linear infinite!important;
    transform:translate3d(0,0,0);
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
  .logo-item img,.business-logo-item img{
    filter:none!important;
    mix-blend-mode:normal!important;
    opacity:.78!important;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
  @keyframes mobileLogoMarquee{to{transform:translate3d(-50%,0,0)}}

  /* Brand journey: one-shot reveal on mobile instead of scroll-linked calculations. */
  .h-brand-line span{
    opacity:0!important;
    transform:translate3d(-18px,10px,0)!important;
    clip-path:none!important;
    transition:opacity .46s ease,transform .58s cubic-bezier(.18,.82,.2,1)!important;
    will-change:auto!important;
  }
  .h-brand-line:nth-child(even) span{transform:translate3d(18px,10px,0)!important}
  .h-brand-line.mobile-brand-visible span{opacity:1!important;transform:translate3d(0,0,0)!important}

  /* Globe: static, crisp canvas on phones. Touch interaction was the main jank source. */
  .h-globe-canvas{pointer-events:none!important;touch-action:auto!important;cursor:default!important}
  .h-globe-instruction{display:none!important}
  .h-map-status{min-height:28px!important}

  /* Avoid expensive transitions while the user scrolls. */
  [data-reveal]{transition-duration:.28s!important}
  .h-case img,.gateway-choice>img{will-change:auto!important}
}
@media(max-width:420px){.logo-track{animation-duration:20s!important}}


@media (max-width:820px){
  /* 1. Mocniejszy social proof na ekranie wyboru branży */
  .gateway-proof{min-height:64px}
  .gateway-proof>div{min-height:62px;padding:10px 7px}
  .gateway-proof strong{font-size:10px;line-height:1.22;font-weight:720;letter-spacing:.02em}

  /* 2. Ticker logotypów tylko na desktopie */
  .hotel-logo-strip{display:none!important}

  /* 3. Globus ukryty na mobile; zostaje komunikat sekcji */
  .h-map-canvas{display:none!important}
  .h-globe-instruction{display:none!important}
  .h-map-stage{padding:0;margin-top:18px}
  .h-map-status{min-height:0;padding:0;justify-content:flex-start}
  .h-map-status strong{font-size:9px;letter-spacing:.11em;text-align:left}
}
@media (max-width:420px){
  .gateway-proof strong{font-size:9.5px}
}


/* Desktop-only reset: keep the logo ticker exactly as a desktop component. */
@media (min-width:821px){
  .hotel-logo-strip{
    display:block!important;
    position:relative;
    overflow:hidden;
    transform:none!important;
    contain:none!important;
    background:#eeede8;
  }
  .hotel-logo-strip .logo-marquee{
    overflow:hidden!important;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)!important;
    mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)!important;
  }
  .hotel-logo-strip .logo-track{
    display:flex!important;
    width:max-content!important;
    animation:hotelLogoMarquee 34s linear infinite!important;
    will-change:transform!important;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
  .hotel-logo-strip .logo-set{
    display:flex!important;
    flex:none!important;
    align-items:center!important;
    gap:clamp(52px,6vw,102px)!important;
    padding:0 clamp(34px,3.5vw,62px)!important;
  }
  .hotel-logo-strip .logo-item,
  .hotel-logo-strip .business-logo-item{
    display:grid!important;
    place-items:center!important;
    flex:0 0 200px!important;
    width:200px!important;
    height:118px!important;
    margin:0!important;
    overflow:visible!important;
  }
  .hotel-logo-strip .logo-item img{
    width:auto!important;height:auto!important;
    max-width:180px!important;max-height:58px!important;
    object-fit:contain!important;
    filter:grayscale(1) contrast(.78)!important;
    opacity:.56!important;
    mix-blend-mode:multiply!important;
  }
  .hotel-logo-strip .logo-hilton img{max-height:66px!important}
  .hotel-logo-strip .logo-radisson img{max-width:190px!important}
  .hotel-logo-strip .logo-zdrojowa img{max-width:184px!important}
  .hotel-logo-strip .logo-bestwestern img{max-width:174px!important}
  .hotel-logo-strip .logo-spark img{max-width:150px!important}
  .hotel-logo-strip .logo-hampton img{width:128px!important;height:72px!important;max-width:none!important;max-height:none!important}
  .hotel-logo-strip .business-logo-item img{
    display:block!important;
    width:auto!important;height:auto!important;
    max-width:184px!important;max-height:64px!important;
    object-fit:contain!important;
    filter:grayscale(1) contrast(.82)!important;
    opacity:.62!important;
    mix-blend-mode:multiply!important;
  }
}

/* Chart is animated when its own block enters the viewport. */
.h-rate-chart.is-visible .h-chart-line{animation-fill-mode:forwards}


/* Start / gateway must always own the header state, even when opened from mid-page. */
.site-header.on-gateway,
.site-header.is-solid.on-gateway{
  background:transparent!important;
  border-bottom-color:transparent!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  box-shadow:none!important;
  height:92px;
}
.site-header.is-solid.on-gateway .gateway-brand-logo{width:178px;}
@media(max-width:820px){
  .site-header.on-gateway,.site-header.is-solid.on-gateway{height:70px;}
  .site-header.is-solid.on-gateway .gateway-brand-logo{width:150px;}
  /* Larger gateway typography on phones. */
  .gateway-content{left:22px;right:22px;bottom:28px;}
  .gateway-title{font-size:clamp(52px,15.2vw,68px)!important;line-height:.9;letter-spacing:-.03em;}
  .gateway-business .gateway-title{font-size:clamp(50px,14.4vw,64px)!important;}
  .gateway-description{font-size:12px!important;line-height:1.4;margin-top:12px;}
  .gateway-enter{min-width:215px!important;margin-top:15px!important;padding:12px 14px!important;}
  .gateway-enter i{font-size:11px!important;font-weight:680;}
  .gateway-enter b{font-size:12px!important;}
  .gateway-proof>div{min-height:56px;padding:9px 8px;}
  .gateway-proof strong{font-size:11.5px!important;line-height:1.2;font-weight:760;letter-spacing:.025em;}
}
@media(max-width:420px){
  .gateway-title{font-size:clamp(50px,14.7vw,64px)!important;}
  .gateway-business .gateway-title{font-size:clamp(47px,13.7vw,60px)!important;}
  .gateway-description{font-size:11px!important;}
  .gateway-proof strong{font-size:10.5px!important;}
}


/* Desktop: zachowaj prawdziwą przezroczystość znaków.
   mix-blend-mode powodował artefakty w zamkniętych literach (o/a/e). */
@media (min-width:821px){
  .hotel-logo-strip .logo-item img,
  .hotel-logo-strip .business-logo-item img{
    mix-blend-mode:normal !important;
    opacity:.58 !important;
    filter:grayscale(1) brightness(.62) contrast(.92) !important;
    background:transparent !important;
    isolation:isolate;
  }
}


@media (min-width:821px){
  .hotel-logo-strip .logo-item img{
    filter:none!important;
    mix-blend-mode:normal!important;
    opacity:.58!important;
    background:transparent!important;
  }
}


@media (min-width:821px){
  .hotel-logo-strip .logo-item img{
    filter:none !important;
    mix-blend-mode:normal !important;
    opacity:.62 !important;
  }
}


@media (min-width:821px){
  .hotel-logo-strip .logo-radisson img{
    filter:none !important;
    mix-blend-mode:normal !important;
    opacity:.62 !important;
    background:transparent !important;
  }
}


/* Cross-browser glyph consistency: never render interface arrows as emoji. */
.gateway-enter b,
.button-primary > span:last-child,
.h-link-light span,
.h-contact-mail i,
.footer-mail span,
.site-footer a,
.h-case-link::after,
.menu-panel .menu-stage nav a::after {
  font-family: Arial, "Helvetica Neue", sans-serif !important;
  font-variant-emoji: text;
  font-style: normal;
}

/* Chrome/Windows can expose OS reduced-motion even when the site is expected to
   retain its presentation. Desktop keeps the designed motion; mobile remains light. */
@media (min-width:821px) {
  .site-intro {
    animation: introFailSafe .82s 2.5s var(--ease) forwards !important;
    transition: clip-path .82s var(--ease), visibility 0s .84s !important;
  }
  .intro-logo-frame {
    animation: introEditorialFrame 1.05s .08s var(--ease) both !important;
  }
  .intro-logo-frame::before {
    animation: introMarkLeft 1.28s .14s var(--ease) both !important;
  }
  .intro-logo-frame::after {
    animation: introMarkRight 1.28s .28s var(--ease) both !important;
  }
  .intro-signature {
    animation: introEditorialSignature .7s .94s var(--ease) both !important;
  }
  .intro-progress i {
    animation: introProgress 1.18s .08s var(--ease) forwards !important;
  }

  .audience-gateway .gateway-choice {
    transition:
      transform .58s cubic-bezier(.2,.78,.2,1),
      opacity .3s ease,
      clip-path 1.05s var(--ease) !important;
  }
  .hero.is-entering .hero-copy {
    animation: hotelPanelReveal .82s var(--ease) both !important;
  }
  .hero.is-entering .hero-copy > * {
    animation: hotelCopyReveal .62s var(--ease) both !important;
  }

  [data-reveal] {
    transition: opacity .68s ease, transform .82s var(--ease) !important;
  }

  /* Give the brand choreography a deterministic initial state before first scroll. */
  .h-brand-line span {
    will-change: transform, opacity, clip-path;
    backface-visibility: hidden;
  }
}


/* Vector icon instead of Unicode/emoji arrows: identical on Windows, macOS, iOS and Android. */
.ui-ne-arrow{
  display:inline-block;
  width:1em;
  height:1em;
  min-width:1em;
  overflow:visible;
  vertical-align:-.12em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:square;
  stroke-linejoin:miter;
  pointer-events:none;
}
.gateway-enter b .ui-ne-arrow{width:14px;height:14px;vertical-align:0}
.button-primary>span:last-child .ui-ne-arrow{width:14px;height:14px;vertical-align:0}
.h-link-light span .ui-ne-arrow{width:14px;height:14px}
.h-contact-mail i .ui-ne-arrow{width:.58em;height:.58em;vertical-align:0}
.footer-mail span .ui-ne-arrow{width:12px;height:12px;vertical-align:0}
.footer-nav a .ui-ne-arrow{width:10px;height:10px;margin-left:4px;vertical-align:-.08em}

/* Remove any old emoji/text-arrow font overrides from these vector containers. */
.gateway-enter b,
.button-primary>span:last-child,
.h-link-light span,
.h-contact-mail i,
.footer-mail span{
  font-family:inherit!important;
  font-variant-emoji:normal;
}


.header-phone{
  position:relative;
  z-index:3;
  display:inline-flex;
  align-items:center;
  min-height:36px;
  color:var(--ink);
  font-size:11px;
  font-weight:650;
  letter-spacing:.015em;
  white-space:nowrap;
  transition:opacity .2s ease,color .25s ease;
}
.header-phone:hover{opacity:.66}
.site-header.on-gateway .header-phone{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.28)}
.site-header.is-solid .header-phone{color:var(--ink);text-shadow:none}
.language-switcher{position:relative;z-index:10}
.language-trigger{
  width:52px;height:38px;
  display:flex;align-items:center;justify-content:center;gap:7px;
  border:1px solid rgba(16,17,22,.34);
  background:rgba(244,243,239,.76);
  color:var(--ink);
  font-family:var(--font-geist-mono),monospace;
  font-size:9px;font-weight:720;letter-spacing:.09em;
  transition:background .25s ease,border-color .25s ease,color .25s ease;
}
.language-trigger i{
  position:relative;width:7px;height:7px;
  border-right:1px solid currentColor;border-bottom:1px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .25s var(--ease);
}
.language-switcher.is-open .language-trigger i{transform:translateY(2px) rotate(225deg)}
.site-header.on-gateway .language-trigger{
  color:#fff;background:rgba(7,13,25,.25);border-color:rgba(255,255,255,.58);
}
.site-header.is-solid .language-trigger{color:var(--ink);background:transparent;border-color:rgba(16,17,22,.34)}
.language-menu{
  position:absolute;top:calc(100% + 9px);right:0;
  width:158px;padding:6px;
  background:#0c141b;border:1px solid rgba(255,255,255,.15);
  box-shadow:0 18px 50px rgba(0,0,0,.24);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(-6px);
  transition:opacity .2s ease,transform .25s var(--ease),visibility 0s .25s;
}
.language-switcher.is-open .language-menu{
  opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s;
}
.language-menu button,.language-menu a{
  width:100%;display:grid;grid-template-columns:31px 1fr;align-items:center;
  min-height:38px;padding:0 10px;text-align:left;color:rgba(255,255,255,.67);
  border:0;background:transparent;transition:background .2s ease,color .2s ease;
}
.language-menu button b,.language-menu a b{
  color:var(--lime);font-family:var(--font-geist-mono),monospace;
  font-size:8px;letter-spacing:.1em;
}
.language-menu button span,.language-menu a span{font-size:11px}
.language-menu button:is(:hover,:focus-visible),.language-menu button[aria-selected="true"],.language-menu a:is(:hover,:focus-visible),.language-menu a[aria-current="page"]{
  color:#fff;background:rgba(255,255,255,.08);
}
.language-menu button:focus-visible,.language-menu a:focus-visible{outline:1px solid var(--lime);outline-offset:-1px}
@media(max-width:820px){
  .site-header,.site-header.is-solid,.site-header.on-gateway{padding-inline:14px}
  .header-side{gap:8px}
  .header-phone{font-size:9px;min-height:32px}
  .language-trigger{width:43px;height:34px;font-size:8px;gap:5px}
  .language-menu{width:150px;right:-52px}
  .site-header .gateway-brand-logo{width:112px}
  .site-header.is-solid .gateway-brand-logo{width:96px}
}
@media(max-width:420px){
  .site-header .gateway-brand-logo{width:92px}
  .site-header.is-solid .gateway-brand-logo{width:88px}
  .header-phone{font-size:8px;letter-spacing:-.01em}
  .header-side{gap:6px}
  .language-trigger{width:39px}
  .menu-trigger{width:44px;min-width:44px;height:44px}
  .menu-trigger i{right:12px}
}


/* Aktualności: extension of the exact homepage design system. */
body{background:var(--paper)}
.site-header{height:70px!important}
.site-header.is-solid{background:rgba(244,243,239,.98)!important;border-bottom:1px solid rgba(16,17,22,.09)!important}
.news-page-v2,.article-page-v2{padding-top:70px;background:var(--paper)}
.news-page-v2 em,.article-page-v2 em{color:var(--blue);font-style:normal}
.news-page-v2 .mb-kicker,.article-page-v2 .mb-kicker{font-family:var(--font-geist-mono),monospace;font-size:9px;font-weight:680;letter-spacing:.13em;text-transform:uppercase;color:var(--blue)}
.news-hero-v2{position:relative;min-height:620px;border-bottom:1px solid rgba(16,17,22,.1);overflow:hidden}
.news-hero-v2 .page-shell{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);min-height:620px}
.news-hero-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:128px 7vw 84px 0}
.news-hero-copy h1{max-width:790px;margin:22px 0 26px;font-size:clamp(64px,7.4vw,116px);font-weight:620;line-height:.86;letter-spacing:-.065em}
.news-hero-copy .lead{max-width:640px;margin:0;color:#51545d;font-size:18px;line-height:1.6;letter-spacing:-.01em}
.news-hero-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:54px 52px 48px;background:var(--blue);color:#fff;overflow:hidden}
.news-hero-panel:before{content:"";position:absolute;inset:auto -16% -30% 12%;height:72%;border:1px solid rgba(218,255,71,.46);border-radius:50% 50% 0 0;transform:rotate(-8deg)}
.news-hero-panel:after{content:"";position:absolute;right:36px;top:42px;width:14px;height:14px;border-radius:50%;background:var(--lime);box-shadow:-28px 0 0 rgba(218,255,71,.4),-56px 0 0 rgba(218,255,71,.18)}
.news-hero-panel .panel-index{position:relative;z-index:2;font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.62)}
.news-hero-panel .panel-copy{position:relative;z-index:2}
.news-hero-panel .panel-copy strong{display:block;max-width:470px;font-size:clamp(34px,3.5vw,56px);font-weight:610;line-height:.96;letter-spacing:-.045em}
.news-hero-panel .panel-copy span{display:block;margin-top:22px;color:rgba(255,255,255,.68);font-family:var(--font-geist-mono),monospace;font-size:9px;line-height:1.65;letter-spacing:.09em;text-transform:uppercase}
.news-list-v2{padding:110px 0 130px}
.news-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:24px;border-bottom:1px solid rgba(16,17,22,.16)}
.news-section-head h2{margin:0;font-size:clamp(28px,3vw,44px);font-weight:610;letter-spacing:-.04em}
.news-section-head span{font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.12em;color:var(--muted)}
.news-article-row{display:grid;grid-template-columns:90px minmax(0,1fr) 240px;gap:36px;align-items:stretch;padding:0;border-bottom:1px solid rgba(16,17,22,.16);transition:background .35s var(--ease),transform .35s var(--ease)}
.news-article-row:hover{background:#fff;transform:translateY(-2px)}
.news-article-no{padding:34px 0;font-family:var(--font-geist-mono),monospace;font-size:10px;letter-spacing:.13em;color:var(--blue)}
.news-article-main{padding:30px 0 38px}
.news-article-meta{display:flex;flex-wrap:wrap;gap:9px 18px;margin-bottom:18px;font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.news-article-meta b{color:var(--blue)}
.news-article-main h3{max-width:860px;margin:0;font-size:clamp(34px,4vw,62px);font-weight:600;line-height:1.02;letter-spacing:-.052em;transition:color .25s ease}
.news-article-row:hover h3{color:var(--blue)}
.news-article-main p{max-width:740px;margin:22px 0 0;color:#555861;font-size:16px;line-height:1.65}
.news-article-cta{display:flex;align-items:flex-end;justify-content:flex-end;padding:34px 0 38px}
.news-read-link{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:650}
.news-read-link i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;font-style:normal;transition:background .25s ease,transform .35s var(--ease)}
.news-article-row:hover .news-read-link i{background:var(--blue);transform:translate(3px,-3px)}
.news-coming-v2{padding:0 0 120px}
.news-coming-box{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:56px 60px;background:#eae9e4;border-top:1px solid rgba(16,17,22,.1)}
.news-coming-box h2{margin:0;font-size:clamp(40px,4.2vw,68px);font-weight:610;line-height:.95;letter-spacing:-.05em}
.news-coming-box p{align-self:end;max-width:590px;margin:0;color:#565963;font-size:16px;line-height:1.65}

/* Article */
.article-hero-v2{padding:74px 0 78px;border-bottom:1px solid rgba(16,17,22,.12)}
.article-breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:58px;color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.09em;text-transform:uppercase}
.article-breadcrumbs a:hover{color:var(--blue)}
.article-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:7vw;align-items:end}
.article-hero-v2 h1{max-width:1050px;margin:18px 0 24px;font-size:clamp(52px,6.5vw,98px);font-weight:610;line-height:.91;letter-spacing:-.064em}
.article-dek{max-width:800px;margin:0;color:#51545d;font-size:19px;line-height:1.58;letter-spacing:-.01em}
.article-facts{border-top:1px solid rgba(16,17,22,.16)}
.article-facts div{padding:18px 0 17px;border-bottom:1px solid rgba(16,17,22,.16)}
.article-facts span{display:block;margin-bottom:6px;color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.article-facts strong{display:block;font-size:13px;font-weight:620}
.article-cover-v2{position:relative;min-height:clamp(340px,47vw,650px);background:var(--blue);overflow:hidden}
.article-cover-v2:before{content:"";position:absolute;width:76vw;height:76vw;left:42%;top:25%;border:1px solid rgba(218,255,71,.36);border-radius:50%;transform:translate(-50%,-50%)}
.article-cover-v2:after{content:"";position:absolute;width:44vw;height:44vw;right:-8%;bottom:-42%;border:1px solid rgba(255,255,255,.25);border-radius:50%}
.article-cover-inner{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;width:var(--shell);margin:auto;padding:52px 0}
.article-cover-top{display:flex;justify-content:space-between;gap:30px;color:#fff;font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.article-cover-top span:last-child{color:var(--lime)}
.article-cover-words{position:relative;z-index:2;display:grid;gap:0;color:#fff;font-size:clamp(54px,9.4vw,146px);font-weight:620;line-height:.72;letter-spacing:-.078em;text-transform:uppercase}
.article-cover-words span:nth-child(2){margin-left:14vw;color:var(--lime)}
.article-layout-v2{display:grid;grid-template-columns:250px minmax(0,780px) minmax(110px,1fr);gap:clamp(36px,5vw,84px);width:var(--shell);margin:0 auto;padding:96px 0 120px}
.article-toc-v2{align-self:start;position:sticky;top:104px;padding-top:5px}
.article-toc-v2>strong{display:block;margin-bottom:18px;color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.article-toc-v2 nav{display:grid;border-top:1px solid rgba(16,17,22,.13)}
.article-toc-v2 a{padding:9px 0;border-bottom:1px solid rgba(16,17,22,.09);color:#75777e;font-size:10px;line-height:1.4;transition:color .2s ease,padding .2s ease}
.article-toc-v2 a:hover,.article-toc-v2 a.is-active{padding-left:7px;color:var(--blue)}
.article-body-v2{min-width:0}
.article-body-v2>p:first-child{font-size:20px;line-height:1.65;color:var(--ink)}
.article-body-v2 p{margin:0 0 24px;color:#3f424a;font-size:17px;line-height:1.76;letter-spacing:-.005em}
.article-body-v2 h2{margin:74px 0 25px;padding-top:14px;border-top:1px solid rgba(16,17,22,.15);font-size:clamp(31px,3.2vw,48px);font-weight:610;line-height:1.04;letter-spacing:-.045em;scroll-margin-top:100px}
.article-body-v2 h3{margin:44px 0 18px;font-size:25px;font-weight:620;letter-spacing:-.025em}
.article-body-v2 strong{color:var(--ink);font-weight:670}
.article-body-v2 ul,.article-body-v2 ol{display:grid;gap:10px;margin:10px 0 30px;padding-left:22px;color:#3f424a;font-size:17px;line-height:1.68}
.article-body-v2 ul{list-style:disc}.article-body-v2 ol{list-style:decimal}
.article-body-v2 a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.article-side-v2{align-self:start;position:sticky;top:104px}
.article-side-v2 .side-mark{display:flex;flex-direction:column;gap:10px;padding:18px 0;border-top:1px solid rgba(16,17,22,.14);border-bottom:1px solid rgba(16,17,22,.14)}
.article-side-v2 .side-mark span{font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.11em;color:var(--muted);text-transform:uppercase}
.article-side-v2 .side-mark strong{font-size:18px;line-height:1.2}
.article-cta-v2{background:#0c141b;color:#fff;padding:100px 0}
.article-cta-v2 .page-shell{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end}
.article-cta-v2 h2{max-width:790px;margin:16px 0 0;font-size:clamp(48px,6.2vw,92px);font-weight:610;line-height:.88;letter-spacing:-.06em}
.article-cta-v2 .mb-kicker{color:var(--lime)}
.article-cta-copy{max-width:560px;justify-self:end}
.article-cta-copy p{margin:0 0 30px;color:rgba(255,255,255,.66);font-size:16px;line-height:1.65}
.article-cta-link{display:inline-flex;align-items:center;gap:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.55);font-size:14px;font-weight:620}
.article-cta-link i{color:var(--lime);font-style:normal}
.mb-reveal{opacity:0;transform:translateY(22px);transition:opacity .72s ease,transform .82s var(--ease)}
.mb-reveal.is-visible{opacity:1;transform:none}

@media(max-width:1050px){
 .news-hero-v2 .page-shell{grid-template-columns:1fr .72fr}.news-hero-copy{padding-right:5vw}.news-article-row{grid-template-columns:64px minmax(0,1fr) 180px}
 .article-layout-v2{grid-template-columns:210px minmax(0,1fr);}.article-side-v2{display:none}
}
@media(max-width:820px){
 .news-page-v2,.article-page-v2{padding-top:70px}
 .news-hero-v2{min-height:0}.news-hero-v2 .page-shell{width:100%;grid-template-columns:1fr}.news-hero-copy{min-height:500px;padding:96px 20px 64px}.news-hero-copy h1{font-size:clamp(54px,17vw,78px);margin-top:18px}.news-hero-copy .lead{font-size:16px}
 .news-hero-panel{min-height:270px;padding:30px 20px}.news-hero-panel .panel-copy strong{font-size:36px}
 .news-list-v2{padding:78px 0 90px}.news-section-head{align-items:center}.news-section-head h2{font-size:30px}
 .news-article-row{grid-template-columns:38px minmax(0,1fr);gap:14px}.news-article-no{padding-top:25px}.news-article-main{padding:24px 0 34px}.news-article-main h3{font-size:clamp(34px,10.6vw,52px)}.news-article-main p{font-size:15px}.news-article-cta{grid-column:2;padding:0 0 34px;justify-content:flex-start;margin-top:-20px}
 .news-coming-v2{padding-bottom:80px}.news-coming-box{grid-template-columns:1fr;gap:28px;padding:38px 24px}.news-coming-box h2{font-size:46px}
 .article-hero-v2{padding:54px 0 54px}.article-breadcrumbs{margin-bottom:40px}.article-hero-grid{grid-template-columns:1fr;gap:42px}.article-hero-v2 h1{font-size:clamp(46px,13.5vw,70px)}.article-dek{font-size:16px}.article-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.article-facts div{padding-right:10px}.article-facts strong{font-size:11px}
 .article-cover-v2{min-height:410px}.article-cover-inner{width:calc(100vw - 40px);padding:30px 0}.article-cover-top{font-size:8px}.article-cover-words{font-size:clamp(56px,21vw,94px);line-height:.75}.article-cover-words span:nth-child(2){margin-left:10vw}
 .article-layout-v2{display:block;width:calc(100vw - 40px);padding:64px 0 86px}.article-toc-v2{position:relative;top:auto;margin-bottom:58px}.article-toc-v2 nav{grid-template-columns:1fr 1fr;column-gap:20px}.article-toc-v2 a{font-size:9px}.article-body-v2>p:first-child{font-size:18px}.article-body-v2 p,.article-body-v2 ul,.article-body-v2 ol{font-size:16px}.article-body-v2 h2{margin-top:58px;font-size:34px}
 .article-cta-v2{padding:72px 0}.article-cta-v2 .page-shell{grid-template-columns:1fr;gap:38px}.article-cta-v2 h2{font-size:clamp(48px,14vw,70px)}.article-cta-copy{justify-self:start}
}
@media(max-width:520px){
 .article-facts{grid-template-columns:1fr}.article-facts div{display:grid;grid-template-columns:110px 1fr;align-items:center}.article-facts span{margin:0}.article-toc-v2 nav{grid-template-columns:1fr}.news-article-meta{gap:6px 12px}
}


/* Aktualnosci v4: spokojniejszy layout bez dekoracyjnych okregow. */
.news-hero-panel::before,.news-hero-panel::after,
.article-cover-v2::before,.article-cover-v2::after{display:none!important;content:none!important}
.news-hero-panel{overflow:hidden}
.article-hero-v2{padding:64px 0 68px}
.article-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:clamp(28px,4vw,56px);align-items:end}
.article-hero-v2 h1{max-width:920px;margin:14px 0 22px;font-size:clamp(42px,5.2vw,82px);font-weight:610;line-height:.96;letter-spacing:-.055em;text-wrap:balance}
.article-dek{max-width:760px;font-size:18px;line-height:1.62}
.article-facts{max-width:220px}
.article-cover-v2{min-height:clamp(420px,34vw,520px);background:var(--blue);overflow:hidden}
.article-cover-inner{padding:42px 0 38px}
.article-cover-words{font-size:clamp(48px,7.5vw,108px);line-height:.82;letter-spacing:-.06em}
.article-cover-words span:nth-child(2){margin-left:10vw}
.article-layout-v2{grid-template-columns:220px minmax(0,760px) minmax(0,1fr);gap:clamp(28px,4vw,64px);padding:72px 0 110px}
.article-toc-v2{margin:0;padding-top:0}
.article-toc-v2 nav{gap:0}
.article-toc-v2 a{padding:11px 0;font-size:11px}
.article-body-v2{min-width:0;max-width:760px;margin-top:0}
.article-body-v2>p:first-child{margin-top:0;font-size:21px;line-height:1.62}
.article-body-v2 p{margin:0 0 22px}
.article-body-v2 h2{margin:62px 0 22px}
.news-list-v2{padding-bottom:100px}
.news-coming-v2{display:none!important}
@media(max-width:1050px){.article-layout-v2{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:820px){
 .article-hero-v2{padding:42px 0 42px}
 .article-breadcrumbs{margin-bottom:28px}
 .article-hero-grid{grid-template-columns:1fr;gap:26px}
 .article-hero-v2 h1{max-width:none;font-size:clamp(34px,10.8vw,56px);line-height:.98;letter-spacing:-.045em}
 .article-dek{font-size:15px}
 .article-facts{display:grid;grid-template-columns:1fr;max-width:none}
 .article-facts div{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center;padding:14px 0}
 .article-cover-v2{min-height:320px}
 .article-cover-inner{width:calc(100vw - 40px);padding:26px 0 24px}
 .article-cover-top{font-size:7px}
 .article-cover-words{font-size:clamp(40px,15vw,68px);line-height:.84;letter-spacing:-.05em}
 .article-cover-words span:nth-child(2){margin-left:0}
 .article-layout-v2{display:block;width:calc(100vw - 40px);padding:42px 0 72px}
 .article-toc-v2{position:relative;top:auto;margin-bottom:26px}
 .article-toc-v2 nav{grid-template-columns:1fr;column-gap:0}
 .article-toc-v2 a{font-size:11px;padding:10px 0}
 .article-body-v2>p:first-child{font-size:18px}
 .article-body-v2 p,.article-body-v2 ul,.article-body-v2 ol{font-size:15px;line-height:1.7}
 .article-body-v2 h2{margin:44px 0 18px;font-size:30px}
 .article-body-v2 h3{margin:32px 0 14px;font-size:22px}
 .news-list-v2{padding-bottom:72px}
 .news-article-main h3{font-size:clamp(30px,9vw,42px);line-height:1.03;letter-spacing:-.04em}
}


/* v5: clean article/news labels + stable SVG arrows */
.news-read-link i svg,.article-cta-link i svg{width:16px;height:16px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.news-read-link i{font-size:0}
.news-hero-panel{justify-content:flex-end!important}
.news-hero-panel>.panel-index{display:none!important}
.news-hero-panel .panel-copy>span{display:none!important}
.news-section-head{justify-content:flex-start!important}
.news-section-head>span{display:none!important}
.news-article-row{grid-template-columns:minmax(0,1fr) 240px!important;gap:36px!important}
.news-article-no{display:none!important}
@media(max-width:1050px){
 .news-article-row{grid-template-columns:minmax(0,1fr) 180px!important}
}
@media(max-width:820px){
 .news-article-row{grid-template-columns:1fr!important;gap:0!important}
 .news-article-main{grid-column:1!important}
 .news-article-cta{grid-column:1!important;justify-content:flex-start!important;margin-top:-10px!important;padding:0 0 34px!important}
}


.content-page-v2{padding-top:86px;background:var(--paper)}
.content-hero-v2{border-bottom:1px solid rgba(16,17,22,.12)}
.content-hero-v2 .page-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.68fr);min-height:680px}
.content-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:92px 7vw 82px 0}
.content-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:42px;color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.content-breadcrumbs a:hover{color:var(--blue)}
.content-kicker{color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.content-hero-v2 h1{max-width:980px;margin:20px 0 30px;font-size:clamp(48px,5.7vw,88px);font-weight:610;line-height:.93;letter-spacing:-.058em;text-wrap:balance}
.content-lead{max-width:760px;margin:0;color:#51545d;font-size:19px;line-height:1.6;letter-spacing:-.01em}
.content-hero-panel{display:flex;flex-direction:column;justify-content:space-between;padding:54px 48px;background:var(--blue);color:#fff}
.content-panel-label{font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.68)}
.content-panel-words{display:grid;gap:2px;font-size:clamp(34px,3.7vw,59px);font-weight:610;line-height:.9;letter-spacing:-.055em}
.content-panel-words em{color:var(--lime);font-style:normal}
.content-panel-note{max-width:330px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.55}
.content-layout-v2{display:grid;grid-template-columns:220px minmax(0,790px) minmax(120px,1fr);gap:clamp(32px,5vw,78px);width:var(--shell);margin:0 auto;padding:96px 0 120px}
.content-toc-v2{align-self:start;position:sticky;top:105px}
.content-toc-v2 strong{display:block;margin-bottom:18px;color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.content-toc-v2 nav{display:grid;border-top:1px solid rgba(16,17,22,.13)}
.content-toc-v2 a{padding:10px 0;border-bottom:1px solid rgba(16,17,22,.09);color:#70737c;font-size:10px;line-height:1.42}
.content-toc-v2 a:hover{color:var(--blue);padding-left:6px}
.content-body-v2{max-width:790px}
.content-body-v2>p:first-child{font-size:21px;line-height:1.64;color:var(--ink)}
.content-body-v2 p{margin:0 0 23px;color:#3f424a;font-size:17px;line-height:1.76}
.content-body-v2 h2{margin:70px 0 24px;padding-top:14px;border-top:1px solid rgba(16,17,22,.15);font-size:clamp(31px,3vw,47px);font-weight:610;line-height:1.04;letter-spacing:-.045em;scroll-margin-top:105px}
.content-body-v2 h3{margin:38px 0 16px;font-size:24px;font-weight:640;letter-spacing:-.025em}
.content-body-v2 strong{color:var(--ink);font-weight:680}
.content-body-v2 ul,.content-body-v2 ol{display:grid;gap:9px;margin:8px 0 30px;padding-left:22px;color:#3f424a;font-size:17px;line-height:1.68}
.content-body-v2 ul{list-style:disc}.content-body-v2 ol{list-style:decimal}
.content-body-v2 a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.content-grid-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:32px 0 40px;background:rgba(16,17,22,.14);border:1px solid rgba(16,17,22,.14)}
.content-card-v2{min-height:180px;padding:26px;background:var(--paper)}
.content-card-v2 small{display:block;margin-bottom:22px;color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.content-card-v2 strong{display:block;margin-bottom:12px;font-size:21px;line-height:1.08}
.content-card-v2 p{margin:0;font-size:14px;line-height:1.6}
.content-side-v2{align-self:start;position:sticky;top:105px}
.content-side-v2 .side-box{padding:20px 0;border-top:1px solid rgba(16,17,22,.15);border-bottom:1px solid rgba(16,17,22,.15)}
.content-side-v2 span{display:block;margin-bottom:9px;color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.content-side-v2 strong{display:block;font-size:16px;line-height:1.28}
.content-faq-v2{margin-top:76px}
.content-faq-v2 details{border-top:1px solid rgba(16,17,22,.15)}
.content-faq-v2 details:last-child{border-bottom:1px solid rgba(16,17,22,.15)}
.content-faq-v2 summary{display:grid;grid-template-columns:1fr 28px;gap:18px;align-items:center;padding:22px 0;cursor:pointer;list-style:none;font-size:18px;font-weight:630}
.content-faq-v2 summary::-webkit-details-marker{display:none}.content-faq-v2 summary i{position:relative;width:20px;height:20px}
.content-faq-v2 summary i:before,.content-faq-v2 summary i:after{content:"";position:absolute;left:2px;top:9px;width:16px;height:1px;background:var(--ink)}
.content-faq-v2 summary i:after{transform:rotate(90deg)}.content-faq-v2 details[open] summary i:after{transform:none}
.content-faq-v2 details p{max-width:680px;margin:0 0 24px;font-size:15px;line-height:1.7}
.content-related-v2{margin-top:70px;padding-top:26px;border-top:1px solid rgba(16,17,22,.16)}
.content-related-v2>strong{display:block;margin-bottom:16px;color:var(--blue);font-family:var(--font-geist-mono),monospace;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.content-related-v2 a{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid rgba(16,17,22,.1);text-decoration:none;font-size:14px}
.content-related-v2 a span{color:var(--blue)}
.content-cta-v2{padding:96px 0;background:#0c141b;color:#fff}
.content-cta-v2 .page-shell{display:grid;grid-template-columns:1.08fr .72fr;gap:80px;align-items:end}
.content-cta-v2 h2{max-width:820px;margin:0;font-size:clamp(48px,6vw,88px);font-weight:610;line-height:.9;letter-spacing:-.058em}
.content-cta-copy{max-width:570px;justify-self:end}.content-cta-copy p{margin:0 0 28px;color:rgba(255,255,255,.68);font-size:16px;line-height:1.65}
.content-cta-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-width:250px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.65);font-size:13px;font-weight:650}
.content-cta-link span{color:var(--lime)}
@media(max-width:1050px){.content-hero-v2 .page-shell{grid-template-columns:1fr .72fr}.content-layout-v2{grid-template-columns:200px minmax(0,1fr)}.content-side-v2{display:none}}
@media(max-width:820px){
 .content-page-v2{padding-top:70px}.content-hero-v2 .page-shell{width:100%;grid-template-columns:1fr}.content-hero-copy{padding:72px 20px 58px}.content-breadcrumbs{margin-bottom:30px}.content-hero-v2 h1{font-size:clamp(43px,12.5vw,66px);line-height:.95}.content-lead{font-size:16px}
 .content-hero-panel{min-height:320px;padding:32px 20px}.content-panel-words{font-size:clamp(42px,12vw,62px)}
 .content-layout-v2{display:block;width:calc(100vw - 40px);padding:62px 0 82px}.content-toc-v2{position:relative;top:auto;margin-bottom:48px}.content-toc-v2 a{font-size:11px}.content-body-v2>p:first-child{font-size:18px}.content-body-v2 p,.content-body-v2 ul,.content-body-v2 ol{font-size:16px}.content-body-v2 h2{margin-top:54px;font-size:34px}.content-grid-v2{grid-template-columns:1fr}.content-card-v2{min-height:0}.content-cta-v2{padding:70px 0}.content-cta-v2 .page-shell{grid-template-columns:1fr;gap:36px}.content-cta-copy{justify-self:start}.content-cta-v2 h2{font-size:clamp(46px,13vw,66px)}
}
