*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:#090a0b;color:#e7e8e9;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #dde7ef;outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;z-index:20;background:#fff;color:#000;padding:10px}header,main,footer{max-width:1440px;margin:auto}header{padding:30px 5%;display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid #282b2e}.name{font-size:19px}.name span{display:block;font:12px monospace;letter-spacing:.08em;color:#adb2b8}nav{display:flex;gap:28px;font-size:14px}nav a{padding:10px 0}section{padding:55px 5%;scroll-margin-top:15px}.hero{--lx:70%;--ly:35%;padding-top:65px;background:radial-gradient(ellipse at var(--lx) var(--ly),#a5b3c02b,transparent 58%),#090a0b}.eyebrow,.tags,.section-head,.hero-foot{font-family:monospace;font-size:13px;letter-spacing:.03em;color:#b0b6bd}.eyebrow{text-transform:uppercase}.hero h1{font-size:clamp(45px,7.9vw,112px);font-weight:400;line-height:1.02;letter-spacing:-.065em;margin:34px 0 42px}.metal{background:linear-gradient(115deg,#858d98 5%,#e5e9ee 35%,#939da9 55%,#f6f7f8 75%,#a0a7ae);background-size:220% 100%;background-position:var(--lx,50%) 50%;background-clip:text;-webkit-background-clip:text;color:transparent}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.hero-bottom p{max-width:440px}.action{display:inline-block;padding:13px 22px;border:1px solid #69717c;background:transparent;color:#e7e8e9;min-height:48px}.action:hover{background:#e7e8e9;color:#101215}.hero-foot{display:flex;justify-content:space-between;margin-top:55px;padding-top:20px;border-top:1px solid #34383d}.section-head{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #383c41;padding:22px 0 35px}.projects{display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.project-visual{display:flex;flex-direction:column;justify-content:space-between;padding:25px;min-height:350px;position:relative;overflow:hidden;background:#16191d}.onehp{background:radial-gradient(ellipse at var(--px,50%) var(--py,50%),#596a7a4d,transparent 70%),#0f1114}.onehp img{width:75%;height:240px;object-fit:contain;align-self:center;transition:transform .4s}.onehp:hover img{transform:scale(1.06)}.visual-footer{font-size:14px}.kap strong{font-size:clamp(32px,4.4vw,58px);font-weight:400;letter-spacing:-.045em;line-height:1.08}.project h3{font-size:25px;font-weight:400;margin-bottom:5px;letter-spacing:-.03em}.tags{line-height:1.5}.onehp:hover .minor-projects{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.minor-projects article{border-top:1px solid #34383d;padding-top:24px}.minor-projects h3{font-size:24px;line-height:1.25;font-weight:400}.minor-projects p{color:#b2b7be;max-width:450px}.case-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px}.big{font-size:clamp(39px,5.6vw,76px);line-height:1.05;font-weight:400;letter-spacing:-.055em;margin:15px 0 35px}.lead{font-size:22px;line-height:1.45}.case-grid p:not(.lead){color:#b5bbc3}.scope{display:flex;flex-wrap:wrap;gap:20px;margin-top:35px;border-top:1px solid #34383d;padding-top:25px;color:#c4c9d0;font-size:14px}.process{background:#121519;padding:30px;margin-top:35px}.phase-nav{display:flex;gap:12px;flex-wrap:wrap}.phase-nav button{padding:12px 18px;color:#c7cdd4;background:transparent;border:1px solid #69717c;min-height:48px}.phase-nav button[aria-pressed=true]{background:#d4d9e0;color:#101215}.phase-output{min-height:135px;padding-top:15px;max-width:750px}.phase-output h3{font-size:28px;font-weight:400;letter-spacing:-.025em;margin-bottom:8px}.phase-output p{color:#bdc4cd}.improvements{max-width:700px;padding-top:20px}.improvements h3{font-weight:400;font-size:23px}.service-list article{display:grid;grid-template-columns:45px 1fr 210px;gap:25px;border-top:1px solid #34383d;padding:30px 0}.service-list h3{font-weight:400;font-size:30px;margin:0;letter-spacing:-.035em}.service-list p{max-width:580px;color:#b6bec7}.service-list small{font-family:monospace;font-size:13px;color:#b6bec7}.service-list article>span{font-family:monospace;color:#aab3be}#kontakt{background:radial-gradient(ellipse at 80% 70%,#5e71821f,transparent 65%)}#kontakt>p{max-width:520px}form{max-width:650px;margin-top:30px}label{display:block;margin:22px 0}input,textarea{display:block;width:100%;border:1px solid #454d58;background:#11151a;color:#e7e8e9;padding:14px;margin-top:10px;border-radius:0;resize:vertical}#brief-status{color:#b6bec7;font-size:14px}footer{padding:30px 5%;border-top:1px solid #34383d;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#b0b6bd}@media(max-width:700px){header{align-items:start;flex-direction:column;padding:20px 6%}nav{gap:20px;flex-wrap:wrap}section{padding:35px 6%}.hero{padding-top:35px}.hero h1{font-size:clamp(40px,9vw,63px)}.hero-bottom{align-items:start;flex-direction:column;gap:15px}.hero-foot{margin-top:35px;font-size:12px}.section-head{flex-direction:column;gap:8px}.projects,.minor-projects,.case-grid{grid-template-columns:1fr;gap:25px}.project-visual{min-height:290px}.onehp img{height:200px}.service-list article{grid-template-columns:25px 1fr;gap:15px}.service-list small{grid-column:2}.process{padding:20px}.phase-nav button{padding:10px;font-size:14px}.phase-output h3{font-size:25px}.lead{font-size:20px}footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Brandriff: original vector artwork and fading, filled echoes. */
.brandriff-art{width:100%;height:auto;overflow:visible}.hero h1{font-size:clamp(42px,6.6vw,92px);margin-top:28px}.logo-core{position:relative}.logo-echo use{will-change:transform}@media(max-width:700px){.logo-echo{display:none}.hero h1{font-size:clamp(40px,9vw,63px)}}@media(prefers-reduced-motion:reduce){.logo-echo{display:none}}

/* One continuous logo: animated at the top, compact and still after scrolling. */
:root{--header-progress:0;--header-height:148px;--logo-width:310px;--echo-opacity:1}
html{scroll-padding-top:105px}.header-space{height:148px}.site-header{position:fixed;top:0;left:0;right:0;z-index:30;width:100%;height:var(--header-height);padding:0 5%;background:rgba(9,10,11,.94);backdrop-filter:blur(14px);align-items:center;border-bottom:1px solid #282b2e}.site-header .name{display:block;flex-shrink:0;width:var(--logo-width);line-height:0}.site-header .brandriff-art{display:block;width:100%;height:auto;overflow:visible}.site-header .name span{line-height:1.5;white-space:nowrap;opacity:calc(1 - var(--header-progress));height:calc(18px * (1 - var(--header-progress)));overflow:hidden}.site-header .logo-echo{opacity:var(--echo-opacity)}.site-header.is-docked .logo-echo{display:none}.hero{padding-top:48px}
@media(max-width:700px){:root{--header-height:134px;--logo-width:190px}.header-space{height:134px}.site-header{padding:12px 6%;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px}.site-header nav{gap:20px;font-size:13px}.site-header nav a{padding:5px 0}.site-header .name span{font-size:10px}.hero{padding-top:30px}html{scroll-padding-top:120px}}

/* 1hp: completed brand work and the current development phase. */
.onehp-case figure{margin:0}.case-status{border-left:2px solid #afc8d7;padding:8px 0 8px 20px;margin-top:28px}.case-status .eyebrow{display:block;margin-bottom:10px}.onehp-atmosphere{margin-top:38px!important;display:grid;grid-template-columns:1.15fr 1fr;align-items:end;background:#050505}.onehp-atmosphere img{width:100%;height:auto;display:block}.onehp-atmosphere figcaption{padding:35px;color:#adb6c0;font:13px/1.7 monospace;max-width:310px}.case-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:55px 0}.case-chapters article{padding-top:20px;border-top:1px solid #34383d}.case-chapters h3,.identity-heading h3{font-size:27px;line-height:1.2;font-weight:400;letter-spacing:-.035em}.case-chapters p,.identity-heading p,.case-closing p:not(.lead){color:#b5bbc3}.case-chapters .chapter-result{font:12px/1.7 monospace;color:#d0d7de;margin-top:25px}.identity-heading{margin:40px 0 24px}.identity-variants{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.identity-variants figure{background:#050505}.identity-variants img{display:block;width:100%;height:auto}.identity-variants figcaption{font:12px monospace;padding:0 22px 22px;color:#b0b6bd}.identity-variants .black-variant{background:#f2f4f5}.black-variant figcaption{color:#30373c}.case-closing{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:50px;padding-top:30px;border-top:1px solid #34383d}@media(max-width:700px){.case-chapters,.case-closing{grid-template-columns:1fr;gap:25px}.onehp-atmosphere{grid-template-columns:1fr}.onehp-atmosphere figcaption{padding:20px;max-width:none}.identity-variants{grid-template-columns:1fr 1fr;gap:12px}.identity-variants .chrome-variant{grid-column:1/-1}.identity-variants figcaption{padding:0 12px 16px}.case-chapters{margin:35px 0}.case-closing{margin-top:35px}}

/* Pair the smaller atmosphere image with the project phase. */
.onehp-progress-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:55px;align-items:center;margin-top:35px}.onehp-progress-layout .onehp-atmosphere{display:block;margin-top:0!important;background:transparent}.onehp-progress-layout .onehp-atmosphere img{max-width:450px;margin:0 auto}.onehp-progress-layout .onehp-atmosphere figcaption{padding:16px 0 0;max-width:none}.onehp-progress .case-status{margin:0;padding:0;border:0;font-size:21px;line-height:1.6;color:#d0d7de}.onehp-progress .case-status .eyebrow{padding-top:18px;border-top:1px solid #34383d;margin-bottom:22px;color:#afc8d7}@media(max-width:700px){.onehp-progress-layout{grid-template-columns:1fr;gap:24px;margin-top:25px}.onehp-progress-layout .onehp-atmosphere img{max-width:360px}.onehp-progress .case-status{font-size:18px}.onehp-progress-layout .onehp-atmosphere figcaption{font-size:12px}}

/* Section landmarks and navigation state. */
main>section:not(.hero){border-top:1px solid #34383d}#prace{background:#101317}#projekt-1hp,#projekt-kap{background:#0c0e11}#sluzby{background:#15191e}#o-mne{background:#090a0b}#kontakt{background-color:#11161b}main>section:not(.hero){padding-top:65px;padding-bottom:65px}.section-head{border-top:0}.main-section-head{align-items:end;margin-bottom:18px;padding-top:0}.main-section-head h2{font:400 clamp(34px,4.2vw,56px)/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.045em;color:#e7e8e9;margin:0}.main-section-head h2 small{display:block;font:12px/1.5 monospace;letter-spacing:.06em;color:#adb6c0;margin-bottom:14px}.main-section-head>span{max-width:320px}.site-header nav a{position:relative;white-space:nowrap;color:#b0b6bd}.site-header nav a:hover,.site-header nav a[aria-current="location"]{color:#f2f4f5}.site-header nav a[aria-current="location"]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#afc8d7}@media(max-width:700px){main>section:not(.hero){padding-top:42px;padding-bottom:42px}.main-section-head{align-items:start;margin-bottom:8px}.site-header nav{gap:16px}.site-header nav a{font-size:12px}.main-section-head h2{font-size:36px}}

.services-intro{max-width:720px;margin-bottom:40px}.collaboration-fit{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin:40px 0;padding:30px 0;border-top:1px solid #424a53}.collaboration-fit h3,.collaboration-process>h3{font-size:30px;font-weight:400;line-height:1.2;letter-spacing:-.035em}.collaboration-fit p,.collaboration-process p{color:#b6bec7}.collaboration-process{border-top:1px solid #424a53;padding-top:25px}.collaboration-process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin:35px 0}.collaboration-process li{border-top:1px solid #424a53;padding-top:20px}.collaboration-process h4{font-size:20px;line-height:1.3;font-weight:400;margin:15px 0}.collaboration-process p{font-size:15px}.service-list small{line-height:1.7}@media(max-width:900px){.collaboration-process ol{grid-template-columns:1fr 1fr}}@media(max-width:700px){.collaboration-fit{grid-template-columns:1fr;gap:15px}.collaboration-process ol{grid-template-columns:1fr;gap:20px}}

.direct-contact a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}#brief .action{margin-bottom:10px}

.form-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#brief button:disabled{opacity:.55;cursor:wait}

.kap-event{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:40px;padding:30px;background:#151a20;border-left:2px solid #afc8d7}.kap-event h3{font-size:clamp(28px,3.4vw,44px);font-weight:400;line-height:1.12;letter-spacing:-.04em;margin-bottom:0}.kap-event p:not(.lead){color:#b5bbc3}.kap-event .lead{margin-top:0}.kap-contribution{border-top:1px solid #34383d;padding-top:25px;max-width:800px}@media(max-width:700px){.kap-event{grid-template-columns:1fr;gap:25px;padding:22px}.kap-event h3{margin-top:15px}}

#projekt-po-medine{background:#0c0e11}.project-detail-link{display:inline-block;padding:8px 0;border-bottom:1px solid #69717c;font-size:14px}.project-detail-link:hover{color:#afc8d7}.medine-takeaway{border-top:1px solid #34383d;padding-top:24px;max-width:800px}.medine-case .case-chapters{margin-bottom:32px}

.about-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.1fr);align-items:start}.about-portrait{margin:0;position:relative;max-width:480px;overflow:hidden}.about-portrait img{display:block;width:100%;height:auto}.about-portrait:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,transparent 82%,#090a0b)}.about-headline{font-size:clamp(36px,4.6vw,62px);margin-top:0;margin-bottom:28px}@media(max-width:700px){.about-grid{grid-template-columns:1fr}.about-portrait{width:min(100%,360px);margin:0 auto}.about-headline{font-size:39px}}

/* Shared spacing and responsive navigation for all portfolio pages. */
:root{--section-gap:72px}
section{overflow-wrap:anywhere}main>section:not(.hero){padding-top:var(--section-gap);padding-bottom:var(--section-gap)}
.skip:focus{position:fixed;z-index:100;top:10px;left:10px}
.hero-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.text-link{display:inline-block;background:none;color:inherit;border:0;border-bottom:1px solid #69717c;padding:12px 0;min-height:44px;cursor:pointer;font-size:14px}
.text-link:hover{color:#afc8d7}.menu-toggle{display:none}
.back-link{display:inline-block;margin:30px 5% 0;padding:12px 0;min-height:44px;color:#b0b6bd}
.case-cta{margin-top:50px;padding-top:30px;border-top:1px solid #34383d;display:flex;flex-wrap:wrap;gap:24px;align-items:center}
.case-cta h2{flex-basis:100%;font-size:30px;line-height:1.2;font-weight:400;letter-spacing:-.035em;margin:0}
.project-page .header-space{height:82px}.project-page .site-header{--header-height:82px;--logo-width:158px}.project-page .name span{display:none}
.project-page .big{max-width:650px}.privacy-note{font-size:13px;color:#b6bec7;max-width:600px}.privacy-note a{text-decoration:underline;text-underline-offset:3px}
#brief-status{min-height:48px}#brief-status:focus{outline:1px solid #69717c;outline-offset:8px}
#copy-brief{margin-left:14px}.service-note{color:#b6bec7;max-width:720px}
.about-grid{align-items:center}.about-portrait{width:100%}
.project-visual:focus-visible{outline-offset:5px}.onehp:hover img{transform:none}
@media(min-width:901px){.site-header nav a{display:flex;align-items:center;min-height:44px}.site-header .name span{font-size:11px}}
@media(max-width:900px){
 :root{--header-height:96px;--logo-width:190px;--section-gap:48px}
 .header-space{height:96px}.site-header{padding:0 6%;flex-direction:row;align-items:center;justify-content:space-between;gap:20px}
 .site-header .name span{font-size:9px}.menu-toggle{display:block;padding:10px 16px;min-height:44px;background:transparent;border:1px solid #69717c;color:#e7e8e9}
 .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#11161b;border-bottom:1px solid #454d58;padding:16px 6%;gap:0;flex-direction:column}
 .site-header.menu-open nav{display:flex}.site-header nav a{font-size:16px;min-height:48px;padding:12px 0}.site-header nav a[aria-current=location]:after{right:auto;width:32px}
 html{scroll-padding-top:96px}.case-grid,.onehp-progress-layout,.collaboration-fit,.kap-event,.case-closing{grid-template-columns:1fr;gap:28px}
 .case-chapters{grid-template-columns:1fr;gap:24px}.projects{grid-template-columns:1fr 1fr;gap:20px}.project-visual{min-height:300px;padding:22px}.kap strong{font-size:36px}
 .service-list article{grid-template-columns:30px 1fr;gap:18px}.service-list small{grid-column:2}.hero-bottom{flex-direction:column;align-items:flex-start;gap:18px}
 .onehp-progress-layout .onehp-atmosphere img{max-width:450px}.project-page .header-space{height:72px}
 .about-portrait{max-width:360px;margin:0 auto}.about-headline br{display:none}.hero{padding-top:36px}
}
@media(max-width:600px){
 :root{--section-gap:42px}.projects,.minor-projects,.collaboration-process ol{grid-template-columns:1fr;gap:28px}
 .hero h1{font-size:clamp(38px,9.3vw,58px);line-height:1.08}.hero-foot{gap:18px}.hero-actions{gap:12px}.project-visual{min-height:290px}
 .big{font-size:40px}.identity-variants{grid-template-columns:1fr 1fr}.identity-variants .chrome-variant{grid-column:1/-1}
 .section-head{gap:12px}.scope{gap:12px}.service-list h3{font-size:26px}.case-cta{align-items:flex-start;flex-direction:column;gap:18px}
 #copy-brief{display:block;margin-left:0}.lead{font-size:20px}
}
@media(prefers-reduced-motion:reduce){.header-space{height:82px}.site-header .name span{display:none}.hero{background:#090a0b}.metal{background-position:50% 50%}.logo-echo{display:none}}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.header-space{height:72px}}

/* Opaque overscan shields the iOS webview's translucent native top controls.
   It stays outside the header layout, so the hero and docking sizes are unchanged. */
@media(max-width:900px){
 .site-header{background:#090a0b;-webkit-backdrop-filter:none;backdrop-filter:none}
 .site-header:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:100vh;background:#090a0b;pointer-events:none}
}

/* Footer continues the site's section rhythm and muted technical labels. */
.site-footer{display:block;padding:56px 5% 20px;background:#090a0b;border-top:1px solid #34383d;color:#b0b6bd}
.footer-grid{display:grid;grid-template-columns:1.15fr 1.2fr .85fr;gap:48px;padding-bottom:42px}
.footer-title{display:inline-block;font:400 clamp(36px,3.8vw,52px)/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.06em;color:#e7e8e9;min-height:44px}
.footer-title span{color:#afc8d7}.footer-brand p{font-size:14px;margin:16px 0 22px}.site-footer .eyebrow{font-size:11px;line-height:1.7;letter-spacing:.045em}
.footer-contact,.footer-details{padding-top:6px}.footer-contact>.eyebrow,.footer-details>.eyebrow{display:block;margin-bottom:18px}
.footer-email{display:block;width:fit-content;max-width:100%;font-size:clamp(15px,1.5vw,19px);color:#e7e8e9;letter-spacing:-.025em;overflow-wrap:anywhere;padding:8px 0;min-height:44px}
.footer-contact .text-link{margin-top:12px}.footer-details p{margin:0 0 12px;line-height:1.7}.footer-details address{font-style:normal;font-size:13px;line-height:1.8}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #282b2e;padding-top:16px}
.footer-bottom nav{display:flex;gap:28px;flex-wrap:wrap;font-size:13px}.footer-bottom nav a,.footer-top{display:inline-flex;align-items:center;min-height:44px;padding:10px 0}.footer-top{gap:16px;font-size:13px;white-space:nowrap}.site-footer a:hover{color:#f2f4f5}
@media(max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr;gap:36px}.footer-details{grid-column:2}.footer-brand{grid-row:1/3}.site-footer{padding-top:44px}}
@media(max-width:600px){.site-footer{padding:40px 6% 16px}.footer-grid{grid-template-columns:1fr;gap:28px;padding-bottom:30px}.footer-brand{grid-row:auto}.footer-details{grid-column:auto}.footer-contact,.footer-details{border-top:1px solid #282b2e;padding-top:24px}.footer-brand p{margin:12px 0 16px}.footer-contact>.eyebrow,.footer-details>.eyebrow{margin-bottom:10px}.footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:4px}.footer-bottom nav{gap:24px;flex:1 1 100%}.footer-top{margin-left:auto}.footer-title{font-size:42px}}

/* Privacy information follows the site's typography with a readable text measure. */
.privacy-content{max-width:900px;margin:0 auto}.privacy-content .big{max-width:700px}.privacy-date{font:12px/1.6 monospace;color:#b0b6bd;margin:24px 0 40px}.privacy-content article{border-top:1px solid #34383d;padding:26px 0 10px}.privacy-content article h2{font-size:26px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin:0 0 18px}.privacy-content article p,.privacy-content li{color:#bdc4cd}.privacy-content strong{color:#e7e8e9}.privacy-content article a{color:#e7e8e9;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.privacy-content ul{padding-left:22px}.privacy-content li{margin-bottom:16px}.footer-privacy{font-size:12px;min-height:44px;display:inline-flex;align-items:center;padding:10px 0}.footer-bottom nav{margin-right:auto}.footer-bottom{flex-wrap:wrap}
@media(max-width:600px){.privacy-content article h2{font-size:24px}.footer-privacy{margin-right:auto}.footer-top{margin-left:0}}

/* Submission confirmation: same dark surfaces, silver type and logo feedback. */
html.confirmation-open{overflow:hidden}
.confirmation{padding:0;border:1px solid #454d58;background:#101317;color:#e7e8e9;width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 100px #0009}
.confirmation::backdrop{background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.confirmation-panel{position:relative;padding:52px 44px 40px;background:radial-gradient(ellipse at 75% 10%,#a5b3c018,transparent 65%)}
.confirmation-close{position:absolute;right:12px;top:12px;background:none;border:0;color:#b0b6bd;font:28px/1 Arial;min-width:44px;min-height:44px;cursor:pointer}.confirmation-close:hover{color:#fff}
.confirmation-logo{width:min(310px,82%);margin-bottom:28px;color:#eef0f2;pointer-events:none;line-height:0}.confirmation-logo .brandriff-art{display:block;overflow:visible}
.confirmation .eyebrow{font-size:11px;color:#afc8d7;margin:0 0 18px}.confirmation h2{font:400 clamp(32px,5vw,46px)/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.055em;margin:0 0 22px}
.confirmation #confirmation-description{color:#bdc4cd;line-height:1.7;margin:0 0 30px;max-width:450px}.confirmation-done{cursor:pointer;display:inline-flex;gap:20px;align-items:center}
.confirmation[open]{animation:confirmation-enter .22s ease-out}.confirmation[open] .confirmation-echo{animation:confirmation-feedback .85s ease-out both}
@keyframes confirmation-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes confirmation-feedback{0%{transform:translate(0,0)}35%{transform:translate(calc(var(--depth) * 9px),calc(var(--depth) * -3px))}100%{transform:translate(0,0)}}
@media(max-width:600px){.confirmation-panel{padding:48px 24px 28px}.confirmation-logo{width:240px;max-width:85%;margin-bottom:24px}.confirmation h2{font-size:36px}.confirmation #confirmation-description{font-size:15px}.confirmation-done{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.confirmation-echo{display:none}.confirmation[open]{animation:none}}

/* Clear homepage entrance without a blocking loading layer. */
.hero-entering .hero>.eyebrow{animation:hero-arrive .7s ease-out both}
.hero-entering .hero h1{animation:hero-arrive 1s .06s cubic-bezier(.16,.7,.25,1) both}
.hero-entering .hero-bottom{animation:hero-arrive .9s .2s cubic-bezier(.16,.7,.25,1) both}
.hero-entering .hero-foot{animation:hero-arrive .85s .32s ease-out both}
.hero-entering .site-header .name{transform-origin:0 0;animation:hero-logo-arrive 1.25s cubic-bezier(.22,.68,.22,1) both}
.hero-entering .site-header .name>span{animation:hero-label-type .95s 1s steps(36,end) both}
.hero-entering .site-header:not(.is-docked) .logo-echo{transform-origin:50% 50%;animation:hero-logo-settle 1.5s cubic-bezier(.22,.68,.22,1) both}
@keyframes hero-arrive{from{opacity:.18;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-logo-arrive{from{transform:translate(var(--intro-logo-x),var(--intro-logo-y)) scale(var(--intro-logo-scale))}to{transform:translate(0,0) scale(1)}}
@keyframes hero-label-type{from{opacity:1;clip-path:inset(0 100% 0 0)}to{opacity:calc(1 - var(--header-progress));clip-path:inset(0 0 0 0)}}
@keyframes hero-logo-settle{0%{transform:translate(0,0) scale(1)}38%{transform:translate(calc(var(--intro-depth) * 15px),calc(var(--intro-depth) * 3px)) scale(calc(1 + var(--intro-depth) * .035))}100%{transform:translate(0,0) scale(1)}}
@media(max-width:900px){.hero-entering .hero>.eyebrow{animation-duration:.6s}.hero-entering .hero h1{animation-duration:.8s}.hero-entering .hero-bottom{animation-duration:.75s;animation-delay:.15s}.hero-entering .hero-foot{animation-duration:.7s;animation-delay:.24s}}
@media(prefers-reduced-motion:reduce){.hero-entering .hero>.eyebrow,.hero-entering .hero h1,.hero-entering .hero-bottom,.hero-entering .hero-foot,.hero-entering .site-header .logo-echo{animation:none}}

/* Keep the introductory trail on touch screens; pointer feedback remains off there. */
@media(max-width:900px) and (prefers-reduced-motion:no-preference){.hero-entering .site-header:not(.is-docked) .logo-echo{display:block}.hero-entering .site-header .name{animation-duration:1s}.hero-entering .site-header .logo-echo{animation-duration:1.25s}}
@media(prefers-reduced-motion:reduce){.hero-entering .site-header .name,.hero-entering .site-header .name>span{animation:none}}

/* Reserve the large logo's space and collapse header and page together. */
.hero-entering .site-header{animation:hero-space-settle 1.25s cubic-bezier(.22,.68,.22,1) both}
.hero-entering .header-space{animation:hero-space-settle 1.25s cubic-bezier(.22,.68,.22,1) both}
.hero-entering .site-header .name{position:absolute;left:var(--intro-logo-left);top:var(--intro-logo-top)}
.hero-entering .site-header nav{position:absolute;right:5%;top:calc((var(--header-height) - 44px)/2)}
@keyframes hero-space-settle{from{height:var(--intro-header-height)}to{height:var(--header-height)}}
@media(max-width:900px){
 .hero-entering .site-header,.hero-entering .header-space{animation-duration:1s}
 .hero-entering .site-header .menu-toggle{position:absolute;right:6%;top:calc((var(--header-height) - 44px)/2)}
 .hero-entering .site-header nav{left:0;right:0;top:100%}
}
@media(prefers-reduced-motion:reduce){.hero-entering .site-header,.hero-entering .header-space{animation:none}}

/* Navigation joins the logo entrance, then keeps subtle interaction feedback. */
.site-header nav a:nth-child(1){--nav-order:0}
.site-header nav a:nth-child(2){--nav-order:1}
.site-header nav a:nth-child(3){--nav-order:2}
.site-header nav a:nth-child(4){--nav-order:3}
.site-header nav a{transition:color .18s ease}
.menu-toggle{transition:background-color .18s ease,border-color .18s ease}
.menu-toggle:hover,.menu-toggle[aria-expanded=true]{background:#1a2026;border-color:#afc8d7}
@media(min-width:901px){
 .hero-entering .site-header nav a{animation:nav-arrive .6s calc(.6s + var(--nav-order) * .09s) cubic-bezier(.2,.65,.3,1) both}
}
@keyframes nav-arrive{from{opacity:.15;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes menu-link-arrive{from{opacity:.3;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:900px){
 .hero-entering .site-header .menu-toggle{animation:nav-arrive .55s .55s ease-out both}
 .site-header.menu-open nav a{animation:menu-link-arrive .3s calc(var(--nav-order) * .045s) ease-out both}
}
@media(prefers-reduced-motion:reduce){.hero-entering .site-header nav a,.hero-entering .site-header .menu-toggle,.site-header.menu-open nav a{animation:none}}

/* Personal profiles are secondary to the project enquiry. */
.about-socials{margin-top:30px;padding-top:22px;border-top:1px solid #34383d}.about-socials>.eyebrow{margin:0 0 8px;font-size:11px}.social-links,.footer-socials{display:flex;flex-wrap:wrap;gap:24px}.social-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;padding:10px 0;font-size:14px;color:#bdc4cd;border-bottom:1px solid #454d58;transition:color .18s ease,border-color .18s ease}.social-link:hover{color:#f2f4f5;border-color:#afc8d7}.social-link span{color:#afc8d7}.footer-socials{margin-top:22px;gap:22px}.footer-socials .social-link{font-size:13px}

/* The full subtitle stays unchanged on desktop; omit it in the mobile header. */
@media(max-width:900px){.site-header .name>span{display:none}}
