@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/assets/fonts/dm-sans-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400 500;
  font-display: swap;
  src: url(/assets/fonts/playfair-display-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(/assets/fonts/playfair-display-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--color-red-700:oklch(50.5% .213 27.518);--color-neutral-50:oklch(98.5% 0 none);--color-neutral-100:oklch(97% 0 none);--color-neutral-200:oklch(92.2% 0 none);--color-neutral-300:oklch(87% 0 none);--color-neutral-400:oklch(70.8% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-neutral-600:oklch(43.9% 0 none);--color-neutral-800:oklch(26.9% 0 none);--color-neutral-950:oklch(14.5% 0 none);--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-tight:1.25;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;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:where(:not(iframe)){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{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sticky{position:sticky}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-4{height:calc(var(--spacing) * 4)}.h-9{height:calc(var(--spacing) * 9)}.w-4{width:calc(var(--spacing) * 4)}.w-9{width:calc(var(--spacing) * 9)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-lg{max-width:var(--container-lg)}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.resize{resize:both}.grid-cols-\[40px_1fr\]{grid-template-columns:40px 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:2147483647px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-neutral-200{border-color:var(--color-neutral-200)}.border-neutral-300{border-color:var(--color-neutral-300)}.border-neutral-800{border-color:var(--color-neutral-800)}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.border-white\/40{border-color:#fff6}@supports (color:color-mix(in lab,red,red)){.border-white\/40{border-color:color-mix(in oklab,var(--color-white) 40%,transparent)}}.bg-neutral-50{background-color:var(--color-neutral-50)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-neutral-200\/50{background-color:#e5e5e580}@supports (color:color-mix(in lab,red,red)){.bg-neutral-200\/50{background-color:color-mix(in oklab,var(--color-neutral-200) 50%,transparent)}}.bg-neutral-950{background-color:var(--color-neutral-950)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-1{padding-block:var(--spacing)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-\[\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.whitespace-pre-wrap{white-space:pre-wrap}.text-neutral-300{color:var(--color-neutral-300)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-red-700{color:var(--color-red-700)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}@media(min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}@media(min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[\.75fr_1\.25fr\]{grid-template-columns:.75fr 1.25fr}}}:root{--paper:#f5f5f5;--white:#fff;--ink:#111;--muted:#6f6f6f;--accent:#171717;--dark:#101010;--line:#dbdbdb;--warm:#e8e8e8;color-scheme:light;scroll-behavior:smooth;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}img{max-width:100%;display:block}::selection{color:#fff;background:var(--accent)}main{overflow:clip}.section-pad{padding-left:max(7.1vw,26px);padding-right:max(7.1vw,26px)}.site-header{z-index:20;width:100%;color:var(--ink);background:#f6f6f6f0;position:absolute;top:0;left:0}.nav-shell{border-bottom:1px solid #2525251a;justify-content:space-between;align-items:center;height:78px;padding:0 max(7.1vw,26px);display:flex}.brand{background:var(--paper);align-items:center;width:142px;height:56px;display:inline-flex;overflow:hidden}.brand img{object-fit:cover;object-position:center;width:100%;height:100%}.main-nav{letter-spacing:.045em;align-items:center;gap:clamp(22px,3.1vw,49px);display:flex}.main-nav>a:not(.nav-contact){transition:color .2s}.main-nav>a:hover{color:var(--accent)}.nav-contact{white-space:nowrap;border:1px solid #25252547;align-items:center;gap:7px;margin-left:6px;padding:7px 12px;line-height:1.5;transition:color .2s,background .2s,border-color .2s;display:flex}.nav-contact:hover{background:var(--accent);border-color:var(--accent);color:var(--white)!important}.menu-toggle{background:0 0;border:0;padding:8px;display:none}.hero{color:#fff;background:#525252;height:min(770px,90vh);min-height:630px;margin-top:78px;position:relative;overflow:hidden}.hero-image,.hero-shade{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover;object-position:50% 53%;animation:1.2s cubic-bezier(.2,.65,.3,1) both hero-arrive}.hero-copy{width:min(650px,70%);animation:.8s .12s both copy-arrive;position:absolute;top:50%;left:max(10.7vw,32px);transform:translateY(-43%)}.hero-eyebrow,.section-label{letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:11px;font-weight:600;display:flex}.hero-eyebrow{color:#ffffffd1}.hero-eyebrow span,.label-dot{background:#c3c3c3;border-radius:50%;flex:0 0 6px;width:6px;height:6px}.hero h1,.section-heading h2,.intro h2,.manifesto h2,.services-heading h2,.team-heading h2,.packages-heading h2,.contact-text h2{letter-spacing:-.057em;margin:0;font-family:Playfair Display,Georgia,serif;font-weight:400;line-height:.99}.hero h1{margin:26px 0 22px}.hero h1 em,h2 em{color:#bfbfbf;font-weight:400}.hero-copy>p{color:#ffffffd4;max-width:420px;margin:0 0 31px;line-height:1.8}.button{letter-spacing:.025em;justify-content:center;align-items:center;gap:29px;min-height:51px;padding:0 20px;transition:background .22s,color .22s,transform .22s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-light{color:var(--ink);background:var(--paper)}.button-light:hover{background:#e2e2e2}.hero-side-note{writing-mode:vertical-rl;letter-spacing:.2em;color:#ffffffc2;position:absolute;top:50%;right:max(7.1vw,26px)}.hero-side-note span{color:#c3c3c3;padding:10px 0}.hero-scroll{letter-spacing:.16em;color:#ffffffd4;align-items:center;gap:17px;display:flex;position:absolute;bottom:31px;left:max(7.1vw,26px)}.hero-index{letter-spacing:.1em;position:absolute;bottom:31px;right:max(7.1vw,26px)}.hero-index span{color:#c3c3c3;padding:0 6px}.section-label,.intro-main h2 em,.section-heading h2 em,.services-heading h2 em,.team-heading h2 em,.packages-heading h2 em{color:var(--accent)}.body-copy{max-width:395px;color:var(--muted);margin:2px 0 0;line-height:1.9}.text-link{color:var(--accent);border-bottom:1px solid #55555573;align-items:center;gap:15px;padding:5px 0 8px;font-weight:600;transition:gap .2s;display:inline-flex}.text-link:hover{gap:23px}.work-section{background:#ededed;padding-top:110px;padding-bottom:135px}.section-heading{justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:52px;display:flex}.section-heading h2{margin-top:22px}.section-heading>p{max-width:320px;color:var(--muted);margin:0 0 4px;line-height:1.9}.work-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:51px;display:flex}.work-toolbar>span{letter-spacing:.15em;color:#7d7d7d;font-weight:600}.filter-list{align-items:center;gap:24px;display:flex}.filter-list button{color:#818181;background:0 0;border:0;padding:17px 0;transition:color .2s;position:relative}.filter-list button:after{background:var(--accent);content:"";height:1px;transition:transform .2s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.filter-list button.active,.filter-list button:hover{color:var(--accent)}.filter-list button.active:after{transform:scaleX(1)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;padding-top:35px;display:grid}.project-image-link{aspect-ratio:1.55;background:#d3d3d3;display:block;position:relative;overflow:hidden}.project-image-link img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.65,.3,1)}.project-image-link:hover img{transform:scale(1.035)}.project-arrow{width:38px;height:38px;color:var(--ink);background:var(--paper);place-items:center;transition:background .2s,color .2s;display:grid;position:absolute;bottom:15px;right:15px}.project-image-link:hover .project-arrow{color:#fff;background:var(--accent)}.project-meta{color:#787878;letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;gap:10px;margin-top:16px;display:flex}.project-title-row{justify-content:space-between;align-items:baseline;gap:15px;margin-top:9px;display:flex}.project-title-row h3{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:400}.project-title-row>span{color:var(--accent)}.concept-note{color:#818181;margin:48px 0 0}.manifesto{color:var(--white);background:var(--dark);padding:100px 0 28px}.manifesto .section-label{color:#cbcbcb}.manifesto-top{grid-template-columns:1fr 1.65fr .74fr;align-items:start;gap:4vw;padding-bottom:98px;display:grid}.manifesto h2{line-height:1.08}.manifesto h2 em{color:#c7c7c7}.manifesto-top>p{color:#ffffffa8;max-width:220px;margin:65px 0 0;line-height:1.9}.process-list{border-top:1px solid #ffffff3b;grid-template-columns:repeat(4,1fr);display:grid}.process-step{border-right:1px solid #ffffff29;min-height:207px;padding:26px 22px 15px 0;position:relative}.process-step:not(:first-child){padding-left:22px}.process-step:last-child{border-right:0}.step-number{color:#cbcbcb;letter-spacing:.1em}.process-step h3{margin:25px 0 10px;font-family:Playfair Display,Georgia,serif;font-weight:400}.process-step p{color:#ffffff9e;max-width:230px;margin:0;line-height:1.75}.process-arrow{color:#ffffff61;position:absolute;top:25px;right:19px}.manifesto-foot{color:#ffffffa6;letter-spacing:.16em;border-top:1px solid #ffffff2b;justify-content:center;align-items:center;gap:17px;margin-top:73px;padding:22px 0;display:flex}.foot-line{background:#ffffff4d;width:min(9vw,115px);height:1px}.services-section{padding-top:132px;padding-bottom:120px}.services-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:65px;display:flex}.services-heading h2{margin-top:20px}.services-heading>p{max-width:270px;color:var(--muted);margin:0 0 6px;line-height:1.9}.service-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr 1.05fr 37px;align-items:center;gap:20px;min-height:111px;transition:padding .22s;display:grid}.service-row:hover{padding-left:8px;padding-right:8px}.service-number{color:#929292;align-self:start;padding-top:35px}.service-row h3{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:400}.service-row p{max-width:380px;color:var(--muted);margin:0;line-height:1.75}.service-row>a{border:1px solid var(--line);width:35px;height:35px;color:var(--accent);place-items:center;transition:background .2s,color .2s;display:grid}.service-row>a:hover{color:#fff;background:var(--accent)}.service-link{margin-top:31px}.team-section{background:#ededed;padding-top:105px;padding-bottom:118px}.team-heading{grid-template-columns:1fr 1.4fr .8fr;align-items:end;gap:4vw;margin-bottom:47px;display:grid}.team-heading .section-label{align-self:start;margin-top:10px}.team-heading h2{line-height:1.05}.team-heading>p{max-width:250px;color:var(--muted);margin:0 0 4px;line-height:1.8}.team-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.team-card-info{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px 12px;padding-top:14px;display:flex}.team-card-info h3{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:400}.team-card-info span{color:#787878}.team-caption{color:#818181;margin:29px 0 0}.packages-section{padding-top:133px;padding-bottom:132px}.packages-heading{grid-template-columns:1fr 1.6fr .9fr;align-items:end;gap:4vw;margin-bottom:56px;display:grid}.packages-heading .section-label{align-self:start;margin-top:10px}.packages-heading>p{max-width:270px;color:var(--muted);margin:0 0 4px;line-height:1.8}.package-grid{border:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.package-card{border-right:1px solid var(--line);background:#fefefe5c;flex-direction:column;min-height:430px;padding:27px 25px 23px;display:flex}.package-featured{background:#ececec;position:relative}.package-top{color:#787878;letter-spacing:.13em;justify-content:space-between;align-items:center;gap:8px;display:flex}.package-badge{color:var(--accent)}.package-card h3{margin:31px 0 8px;font-family:Playfair Display,Georgia,serif;font-weight:400}.package-fit{min-height:34px;color:var(--muted);margin:0;line-height:1.7}.package-rule{background:var(--line);height:1px;margin:22px 0 20px}.package-card ul{gap:13px;margin:0;padding:0;list-style:none;display:grid}.package-card li{color:#575757;align-items:flex-start;gap:9px;line-height:1.5;display:flex}.package-cta{color:var(--accent);justify-content:space-between;align-items:center;margin-top:auto;padding-top:24px;display:flex}.package-cta:hover{text-underline-offset:4px;text-decoration:underline}.package-note{color:#818181;margin:18px 0 0;line-height:1.7}.contact-section{min-height:500px;color:var(--white);background:#393939;grid-template-columns:1.2fr .8fr;padding:100px max(10vw,32px);display:grid;position:relative;overflow:hidden}.contact-section:before{content:"";border:1px solid #ffffff1a;border-radius:50%;width:560px;height:560px;position:absolute;top:-190px;right:13%}.contact-section:after{content:"";border:1px solid #ffffff1a;border-radius:50%;width:410px;height:410px;position:absolute;top:-115px;right:20%}.contact-text,.contact-aside{z-index:1;position:relative}.contact-text .section-label{color:#cbcbcb}.contact-text h2 em{color:#c7c7c7}.contact-aside{text-align:right;flex-direction:column;justify-content:space-between;align-items:flex-end;display:flex}.contact-detail{gap:9px;display:grid}.contact-detail>span{color:#ffffff91;letter-spacing:.16em}.contact-detail>a{justify-content:flex-end;align-items:center;gap:8px;font-family:Playfair Display,Georgia,serif;display:inline-flex}.contact-detail small{color:#ffffff7a;max-width:280px;line-height:1.55}.site-footer{background:var(--paper);padding:28px max(7.1vw,26px) 17px}.footer-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:92px;padding-bottom:23px;display:flex}.brand-footer{width:155px;height:60px}.back-top{color:var(--accent);align-items:center;gap:12px;display:inline-flex}.footer-bottom{color:#8a8a8a;letter-spacing:.12em;justify-content:space-between;gap:20px;padding-top:16px;display:flex}.footer-bottom a:hover{color:var(--accent)}@keyframes hero-arrive{0%{opacity:.6;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes copy-arrive{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(min-width:1500px){.hero{height:min(850px,84vh)}.section-pad{padding-left:max(50vw - 660px,7.1vw);padding-right:max(50vw - 660px,7.1vw)}}@media(max-width:900px){.nav-shell{height:72px}.hero{height:720px;min-height:590px;margin-top:72px}.hero-copy{width:76%;left:7.1vw}.manifesto-top{grid-template-columns:.7fr 1.8fr}.manifesto-top>p{grid-column:2;margin:-16px 0 0}.team-heading,.packages-heading{grid-template-columns:.8fr 1.6fr}.team-heading>p,.packages-heading>p{grid-column:2;margin-top:-12px}.team-card-info{display:block}.team-card-info span{margin-top:5px;display:block}.package-card{padding-left:18px;padding-right:18px}.contact-section{padding-left:7vw;padding-right:7vw}}@media(max-width:640px){.section-pad{padding-left:22px;padding-right:22px}.nav-shell{height:66px;padding-left:16px;padding-right:20px}.brand{width:128px;height:48px}.menu-toggle{place-items:center;display:inline-grid}.main-nav{border-bottom:1px solid var(--line);background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 22px;display:none;position:absolute;top:66px;left:0;right:0;box-shadow:0 16px 25px #24242414}.main-nav.is-open{display:flex}.main-nav>a:not(.nav-contact){border-bottom:1px solid var(--line);padding:15px 0}.nav-contact{justify-content:center;align-self:flex-start;margin:12px 0 0;padding:9px 12px}.hero{height:690px;min-height:590px;margin-top:66px}.hero-image{object-position:56% center}.hero-shade{background:linear-gradient(90deg,#191919ab,#19191929),linear-gradient(#0000 55%,#19191959)}.hero-copy{width:calc(100% - 53px);top:45%;left:23px;transform:translateY(-28%)}.hero h1{margin:20px 0 17px}.hero-copy>p{max-width:330px;line-height:1.75}.hero-side-note{display:none}.hero-scroll{bottom:25px;left:23px}.hero-index{bottom:25px;right:23px}.body-copy{max-width:440px}.work-section{padding-top:82px;padding-bottom:85px}.section-heading{margin-bottom:31px;display:block}.section-heading h2{margin-top:21px}.section-heading>p{max-width:360px;margin-top:19px}.work-toolbar{padding-top:13px;display:block}.work-toolbar>span{margin-bottom:3px;display:block}.filter-list{gap:clamp(14px,4vw,25px);overflow-x:auto}.filter-list button{flex:none;padding:13px 0}.project-grid{grid-template-columns:1fr;row-gap:28px;padding-top:23px}.project-image-link{aspect-ratio:1.55}.concept-note{margin-top:30px}.manifesto{padding-top:77px}.manifesto-top{padding-bottom:46px;display:block}.manifesto h2{margin-top:33px}.manifesto-top>p{max-width:330px;margin:21px 0 0}.process-list{grid-template-columns:1fr 1fr}.process-step{border-bottom:1px solid #ffffff29;min-height:190px;padding:22px 15px 18px 0}.process-step:not(:first-child){padding-left:15px}.process-step:nth-child(2){border-right:0}.process-step:nth-last-child(-n+2){border-bottom:0}.process-step h3{margin-top:23px}.process-arrow{right:12px}.manifesto-foot{letter-spacing:.09em;gap:8px;margin-top:42px;padding:18px 0}.foot-line{width:5vw}.services-section{padding-top:86px;padding-bottom:84px}.services-heading{margin-bottom:33px;display:block}.services-heading h2{margin-top:31px}.services-heading>p{margin-top:19px}.service-row{grid-template-columns:27px 1fr 31px;gap:10px;min-height:103px}.service-number{padding-top:35px}.service-row p{grid-area:2/2/auto/3;align-self:start;margin-top:-22px;padding-bottom:17px}.service-row>a{grid-area:1/3/3;width:31px;height:31px}.service-link{margin-top:24px}.team-section{padding-top:81px;padding-bottom:83px}.team-heading{margin-bottom:30px;display:block}.team-heading h2{margin-top:30px}.team-heading>p{margin-top:16px}.team-grid{grid-template-columns:1fr 1fr;gap:25px 12px}.team-card:last-child{grid-column:1/-1;width:calc(50% - 6px)}.team-card-info span{line-height:1.5}.team-caption{margin-top:23px}.packages-section{padding-top:89px;padding-bottom:87px}.packages-heading{margin-bottom:32px;display:block}.packages-heading h2{margin-top:31px}.packages-heading>p{margin-top:17px}.package-grid{grid-template-columns:1fr}.package-card{min-height:initial;border-right:0;border-bottom:1px solid var(--line);padding:24px 20px 22px}.package-card:last-child{border-bottom:0}.package-card h3{margin-top:23px}.package-fit{min-height:initial}.package-card ul{gap:11px}.package-cta{margin-top:23px;padding-top:15px}.contact-section{min-height:initial;padding:78px 23px 36px;display:block}.contact-section:before{width:490px;height:490px;top:-108px;right:-290px}.contact-section:after{width:345px;height:345px;top:-46px;right:-216px}.contact-text h2{margin-top:30px}.contact-text>p{max-width:345px}.contact-aside{text-align:left;align-items:flex-start;min-height:145px;margin-top:49px}.contact-detail>a{justify-content:flex-start}.contact-detail small{max-width:310px}.site-footer{padding:20px 20px 15px}.footer-top{flex-wrap:wrap;gap:9px;min-height:81px;padding-bottom:17px}.brand-footer{width:125px;height:49px}.back-top{justify-content:flex-end;width:100%}.footer-bottom{flex-wrap:wrap;gap:9px 14px}}.project-description{max-width:450px;color:var(--muted);margin:10px 0 0;line-height:1.75}.team-bio{max-width:330px;color:var(--muted);margin:9px 0 0;line-height:1.7}@media(max-width:640px){.project-description{margin-top:8px}.team-bio{line-height:1.6}}[hidden]{display:none!important}button{cursor:pointer}.skip-link{z-index:100;background:var(--paper);padding:12px 18px;position:fixed;top:10px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.project-grid.is-filtered{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid.is-filtered .project-card{grid-column:auto;width:100%;margin-left:0;padding-top:0}.project-grid.is-filtered .project-image-link{aspect-ratio:1.55}.team-card{border-top:1px solid var(--line);padding-top:20px}.team-bio{flex-basis:100%}@media(max-width:760px)and (min-width:641px){.main-nav{gap:16px}.nav-contact{margin-left:0;padding:7px 10px}.nav-shell{padding-inline:22px}}@media(max-width:640px){.project-grid.is-filtered{grid-template-columns:1fr}}.icon{vertical-align:middle;flex-shrink:0;width:1rem;height:1rem;display:inline-block}.menu-toggle .icon{width:1.5rem;height:1.5rem}.menu-toggle .menu-icon-close,.menu-toggle[aria-expanded=true] .menu-icon-open{display:none}.menu-toggle[aria-expanded=true] .menu-icon-close{display:inline-block}.package-card li .icon{width:14px;height:14px;color:var(--accent)}.footer-bottom>a{align-items:center;gap:5px;display:inline-flex}.footer-bottom .icon{width:12px;height:12px}:root{--glass-light:#ffffffc2;--glass-border:#ffffffb8;--glass-shadow:0 12px 40px #0000000f, inset 0 1px 0 #fffc}body{background:#f5f5f5}.site-header{background:#fffffff0;position:fixed;box-shadow:0 1px 24px #0000000f}.brand{background:0 0}.brand img{filter:grayscale()contrast(1.15);mix-blend-mode:multiply}.project-image-link img{filter:grayscale()}.hero{background:#171717}.hero h1 em,.manifesto h2 em,.contact-text h2 em{color:#eee}.hero-eyebrow{background:#00000042;border:1px solid #ffffff47;border-radius:999px;width:fit-content;max-width:100%;padding:11px 15px}.button-light{color:#fff;background:#0000007a;border:1px solid #ffffff80;border-radius:12px;box-shadow:inset 0 1px #fff3}.button-light:hover{color:#111;background:#fffffff0}.nav-contact,.service-row>a{background:#ffffff73;border-radius:10px}.project-arrow{border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);background:#ffffffdb;border-radius:12px}.project-image-link{border:0;border-radius:18px}.work-section,.team-section,.packages-section{background:radial-gradient(at 85% 15%,#fff,#0000 55%),linear-gradient(135deg,#e5e5e5,#f7f7f7 60%,#ededed)}.team-card,.package-card{background:var(--glass-light);box-shadow:var(--glass-shadow);border:1px solid #ffffffe6;border-radius:18px}.team-card{padding:24px}.team-card-info{padding-top:0}.package-grid{border:0;gap:18px}.package-card:last-child{border-right:1px solid #ffffffe6}.package-featured{background:#ffffffeb;border-color:#00000038;box-shadow:0 18px 48px #0000001a,inset 0 1px #fff}.package-badge{border:1px solid #0000001f;border-radius:999px;padding:6px 8px}.manifesto,.contact-section{background:radial-gradient(at 90% 0,#363636,#101010 70%)}.contact-detail{background:#ffffff14;border:1px solid #fff3;border-radius:16px;padding:22px}.contact-detail small{color:#ffffffb8}:focus-visible{outline-offset:5px;outline:2px solid}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header{background:#ffffffb8}.site-header,.hero-eyebrow,.button-light,.project-arrow,.team-card,.package-card,.contact-detail{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}}@media(max-width:640px){.main-nav{background:#fffffff7;border-radius:0 0 20px 20px}.hero-eyebrow{letter-spacing:.12em;padding:10px 12px}.team-card{padding:17px}.package-grid{gap:16px}.package-card{border-bottom:1px solid #ffffffe6}.contact-detail{width:100%;padding:20px}}:root{--text-body:clamp(.9375rem, .9rem + .15vw, 1rem);--text-small:.8125rem;--text-label:.6875rem;--section-title:clamp(2.125rem, 1.5rem + 2.6vw, 4rem);--page-gutter:max(24px, calc((100vw - 1200px)/2) );--muted:#606060}body{font-size:var(--text-body);line-height:1.7}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-align:left;text-wrap:pretty;overflow-wrap:break-word}.section-pad,.nav-shell,.site-footer{padding-inline:var(--page-gutter)}.section-pad>*,.project-card,.team-card,.package-card,.contact-text,.contact-aside{min-width:0}.hero h1,.section-heading h2,.intro h2,.manifesto h2,.services-heading h2,.team-heading h2,.packages-heading h2,.contact-text h2{font-size:var(--section-title);letter-spacing:-.035em;max-width:20ch;line-height:1.15}.hero{height:auto;min-height:min(800px,88svh);padding:100px var(--page-gutter) 120px;align-items:center;display:flex}.hero-copy{width:min(100%,760px);position:relative;top:auto;left:auto;transform:none}.hero h1{max-width:16ch;margin:26px 0 24px;font-size:clamp(2.75rem,1.8rem + 4vw,5.5rem);line-height:1.1}.hero-copy>p{max-width:48ch;font-size:var(--text-body);margin-bottom:30px;line-height:1.8}.hero-scroll{left:var(--page-gutter);font-size:var(--text-label)}.hero-index{right:var(--page-gutter);font-size:var(--text-small)}.hero-side-note{right:var(--page-gutter);font-size:.625rem}.hero-eyebrow,.section-label{font-size:var(--text-label);letter-spacing:.13em;line-height:1.6}.main-nav{letter-spacing:.01em;gap:clamp(16px,2vw,32px);font-size:.8125rem}.brand{flex-shrink:0}.button,.text-link,.package-cta,.back-top{font-size:var(--text-small);font-weight:500;line-height:1.5}.button{gap:20px;min-height:48px}.intro,.work-section,.services-section,.team-section,.packages-section{padding-block:clamp(72px,8vw,112px)}.body-copy,.section-heading>p,.services-heading>p,.team-heading>p,.packages-heading>p,.manifesto-top>p,.contact-text>p{font-size:var(--text-body);max-width:48ch;line-height:1.8}.section-heading,.services-heading{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end;gap:48px;margin-bottom:40px;display:grid}.section-heading h2,.services-heading h2{margin-top:20px}.section-heading>p,.services-heading>p{margin:0}.team-heading,.packages-heading,.manifesto-top{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end;gap:20px 48px;margin-bottom:40px;display:grid}.team-heading .section-label,.packages-heading .section-label,.manifesto-top .section-label{grid-column:1/-1;margin:0}.team-heading h2,.packages-heading h2,.manifesto h2{margin:0}.team-heading>p,.packages-heading>p,.manifesto-top>p{grid-column:2;margin:0}.manifesto{padding-top:clamp(72px,8vw,112px)}.manifesto-top{padding-bottom:0}.work-toolbar{flex-wrap:wrap;gap:8px 24px;padding-block:8px}.work-toolbar>span,.project-meta,.package-top,.package-badge{font-size:var(--text-label);letter-spacing:.06em;line-height:1.6}.filter-list button{font-size:var(--text-small);min-height:44px}.project-meta{flex-wrap:wrap;gap:4px 16px}.project-title-row{flex-wrap:wrap;gap:4px 16px;margin-top:12px}.project-title-row h3,.process-step h3,.service-row h3,.team-card-info h3{letter-spacing:-.02em;font-size:clamp(1.375rem,1.15rem + .7vw,1.75rem);line-height:1.3}.project-title-row>span,.team-card-info span{font-size:var(--text-small);line-height:1.6}.project-description,.team-bio,.process-step p,.service-row p,.package-fit,.package-card li{font-size:var(--text-body);max-width:52ch;line-height:1.75}.concept-note,.team-caption,.package-note,.contact-detail small{font-size:.75rem;line-height:1.7}.process-step{padding-block:28px}.process-step h3{margin-top:24px}.step-number,.service-number,.contact-index{font-size:var(--text-small)}.manifesto-foot{font-size:var(--text-label);flex-wrap:wrap}.service-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1.3fr) 44px;gap:24px;padding-block:28px}.service-number{padding-top:4px}.service-row>a{width:44px;height:44px}.team-card-info{align-content:start;gap:10px;display:grid}.team-bio,.team-card-info span{margin:0}.package-card{padding:28px}.package-top{flex-wrap:wrap;min-height:42px}.package-card h3{margin:24px 0 12px;font-size:1.875rem;line-height:1.25}.package-fit{min-height:5.25em}.package-card li>span{flex-shrink:0}.package-cta{gap:12px;padding-top:28px}.contact-section{padding:clamp(72px,8vw,112px) var(--page-gutter);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px}.contact-text h2{margin:24px 0}.contact-aside{text-align:left;align-items:stretch;gap:32px}.contact-detail>span{font-size:var(--text-label)}.contact-detail>a{overflow-wrap:anywhere;justify-content:flex-start;font-size:clamp(1rem,1.4vw,1.375rem)}.footer-top{gap:24px}.footer-bottom{letter-spacing:.06em;color:#606060;flex-wrap:wrap;align-items:center;gap:12px 24px;padding-block:20px;font-size:.6875rem;line-height:1.6}@media(max-width:1000px){.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}.process-step:nth-child(2){border-right:0}.process-step:nth-child(3){padding-left:0}.process-step:nth-child(-n+2){border-bottom:1px solid #ffffff29}.package-card{padding:24px 20px}.package-card h3{font-size:1.625rem}}@media(max-width:800px){.section-heading,.services-heading,.team-heading,.packages-heading,.manifesto-top{grid-template-columns:minmax(0,1fr);gap:24px}.team-heading>p,.packages-heading>p,.manifesto-top>p{grid-column:1}.team-grid,.package-grid{grid-template-columns:minmax(0,1fr)}.team-card:last-child{grid-column:auto;width:auto}.package-card{min-height:0;padding:28px}.package-fit{min-height:0}.package-cta{margin-top:24px}.contact-section{grid-template-columns:minmax(0,1fr);gap:36px}.contact-aside{max-width:440px;min-height:0;margin-top:0}.hero-side-note{display:none}.main-nav{gap:14px;font-size:.75rem}}@media(max-width:640px){:root{--page-gutter:22px}.main-nav{font-size:.9375rem}.hero{min-height:640px;padding-block:72px 110px}.hero-copy{width:100%}.hero h1{font-size:clamp(2.5rem,10vw,3.5rem)}.hero-eyebrow{letter-spacing:.08em;font-size:.625rem}.hero-scroll{letter-spacing:.08em;gap:10px;max-width:75%;font-size:.5625rem}.hero-index{font-size:.6875rem}.work-toolbar{display:block}.work-toolbar>span{margin-bottom:4px}.filter-list{gap:22px}.service-row{grid-template-columns:24px minmax(0,1fr) 44px;gap:12px;min-height:0}.service-row h3{grid-column:2}.service-row p{grid-area:2/2;margin:0;padding:0}.service-row>a{grid-area:1/3}.service-number{padding-top:3px}.service-row:hover{padding-inline:0}.contact-section{display:grid}.footer-top{grid-template-columns:1fr;justify-items:start;gap:14px;display:grid}.back-top{justify-content:flex-start;width:auto}.footer-bottom{flex-direction:column;align-items:flex-start}}@media(max-width:400px){.process-list{grid-template-columns:minmax(0,1fr)}.process-step,.process-step:not(:first-child){border-bottom:1px solid #ffffff29;border-right:0;padding:24px 0}.process-step:last-child{border-bottom:0}.package-card{padding:24px 20px}}.project-card{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.project-meta{gap:4px;display:grid}.project-title-row{gap:6px;display:grid}.project-description{margin-top:12px}@media(max-width:800px){.project-grid,.project-grid.is-filtered{grid-template-columns:minmax(0,1fr);row-gap:36px}}.nav-contact{border-radius:8px}.nav-contact .icon{width:14px;height:14px}.contact-section{min-height:0;padding:clamp(72px,8vw,112px) var(--page-gutter);grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);align-items:center;gap:clamp(40px,6vw,88px);display:grid}.contact-text{flex-direction:column;align-items:flex-start;display:flex}.contact-text .section-label{color:#d4d4d4;margin:0 0 24px}.contact-text h2{text-align:left;max-width:18ch;margin:0 0 24px;font-size:clamp(2.125rem,1.3rem + 3vw,3.75rem);line-height:1.16}.contact-text>p{color:#d4d4d4;max-width:46ch;margin:0;line-height:1.8}.contact-text>.button{gap:24px;margin-top:32px;padding:14px 20px}.contact-aside{text-align:left;justify-self:end;width:100%;max-width:420px;min-height:0;margin:0;display:block}.contact-detail{background:#ffffff12;border:1px solid #fff3;border-radius:18px;flex-direction:column;align-items:flex-start;gap:0;width:100%;padding:clamp(24px,3vw,40px);display:flex;box-shadow:inset 0 1px #ffffff14}.contact-detail>.contact-label{letter-spacing:.14em;color:#d4d4d4;margin-bottom:18px;font-size:.6875rem;line-height:1.6}.contact-detail>a{letter-spacing:-.02em;overflow-wrap:anywhere;border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding-bottom:18px;font-family:DM Sans,Arial,sans-serif;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:500;line-height:1.5;display:flex}.contact-detail>a>span{flex-shrink:0}.contact-detail small{color:#bfbfbf;max-width:34ch;margin-top:18px;font-size:.75rem;line-height:1.7;display:block}@media(max-width:800px){.contact-section{grid-template-columns:minmax(0,1fr);gap:40px}.contact-aside{justify-self:start;max-width:520px}.contact-text h2{max-width:20ch}}@media(max-width:400px){.contact-detail{padding:22px 18px}.contact-detail>a{gap:8px;font-size:1rem}}.intro{grid-template-columns:minmax(180px,1fr) minmax(0,3fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.intro-side{align-content:start;justify-items:start;gap:18px;padding-top:8px;display:grid}.intro-side .section-label{letter-spacing:.1em;line-height:1.7}.intro-note{border-top:1px solid var(--line);letter-spacing:.1em;color:var(--muted);padding-top:18px;font-size:.6875rem;line-height:1.7;display:block}.intro-main{grid-template-columns:minmax(0,1fr);justify-items:start;gap:32px;min-width:0;display:grid}.intro-main h2{letter-spacing:-.03em;text-align:left;width:100%;max-width:21ch;margin:0;font-size:clamp(2.125rem,1.25rem + 3vw,3.75rem);line-height:1.18}.intro-bottom{border-top:1px solid var(--line);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(24px,3vw,40px);width:100%;margin:0;padding-top:28px;display:grid}.intro-lead{letter-spacing:-.01em;max-width:30ch;color:var(--ink);margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(1.25rem,1.1rem + .45vw,1.5rem);font-weight:400;line-height:1.6}.intro-bottom .body-copy{max-width:48ch;font-size:var(--text-body);text-align:left;margin:0;line-height:1.85}.intro-main>.text-link{gap:12px;max-width:100%;margin:0}@media(max-width:900px){.intro{grid-template-columns:minmax(0,1fr);gap:28px}.intro-side{gap:12px;padding:0}.intro-note{padding-top:12px}}@media(max-width:640px){.intro-main{gap:24px}.intro-bottom{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:24px}.intro-lead,.intro-bottom .body-copy{max-width:100%}.intro-main h2{font-size:clamp(2rem,7.8vw,2.75rem)}}.hero-image{object-position:center}.hero-shade{background:linear-gradient(90deg,#000000a8,#0000004d 55%,#00000014),linear-gradient(#0000 55%,#00000040)}@media(max-width:640px){.hero-image{object-position:center}.hero-shade{background:linear-gradient(90deg,#000000b8,#0006)}}.inner-page main{min-height:65vh;padding-top:78px}.page-heading{border-bottom:1px solid var(--line);padding-block:clamp(40px,6vw,72px)}.page-breadcrumb{font-size:var(--text-small);color:var(--muted);text-underline-offset:4px;text-decoration:underline}.page-heading h1{margin:20px 0 16px;font-size:clamp(2.75rem,6vw,5rem);line-height:1.1}.page-heading p{max-width:52ch;color:var(--muted);margin:0}.main-nav a[aria-current=page]{text-underline-offset:6px;font-weight:600;text-decoration:underline}.project-inquiry{margin-top:20px}@media(max-width:900px){.inner-page main{padding-top:72px}}@media(max-width:640px){.inner-page main{padding-top:66px}}.site-information{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,80px);padding-block:72px;display:grid}.information-block{min-width:0}.information-block h2{margin:16px 0 24px;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2}.information-block p{color:var(--muted);margin:16px 0}.information-block .information-subtitle{font-size:var(--text-small);margin-top:-12px}.information-block a{text-underline-offset:3px;text-decoration:underline}.information-block details{border-bottom:1px solid var(--line)}.information-block summary{cursor:pointer;padding-block:18px;font-weight:500}.information-block details p{margin:0 0 20px}.footer-navigation{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px 64px;padding-block:32px;display:grid}.footer-navigation h2{font-family:DM Sans,Arial,sans-serif;font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-weight:600}.footer-navigation ul{margin:0;padding:0;list-style:none}.footer-menu{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;display:grid}.footer-navigation a{min-height:44px;font-size:var(--text-small);flex-wrap:wrap;align-items:center;gap:0 4px;padding-block:8px;display:inline-flex}.footer-navigation a span{color:var(--muted)}.footer-navigation a:hover{text-underline-offset:4px;text-decoration:underline}@media(max-width:800px){.site-information{grid-template-columns:minmax(0,1fr);gap:48px}.footer-navigation{grid-template-columns:minmax(0,1fr);gap:28px}}@media(max-width:400px){.footer-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}.workflow-section{padding-block:clamp(56px,7vw,96px)}.workflow-heading{max-width:760px;margin-bottom:40px}.workflow-heading h2{font-size:var(--section-title);letter-spacing:-.03em;margin:20px 0;line-height:1.18}.workflow-heading>p{max-width:52ch;color:var(--muted)}.workflow-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.workflow-step{border-bottom:1px solid var(--line);grid-template-columns:110px minmax(0,1fr);gap:32px;padding:32px 0;display:grid}.workflow-marker{align-self:start;align-items:center;gap:20px;padding-top:4px;display:flex}.workflow-number{font-size:var(--text-small);color:var(--muted)}.workflow-marker svg{flex-shrink:0}.workflow-label{font-size:var(--text-label);letter-spacing:.06em;color:var(--muted)}.workflow-copy h3{margin:10px 0 12px;font-size:clamp(1.375rem,2.5vw,1.875rem);line-height:1.3}.workflow-copy p{max-width:72ch;color:var(--muted);margin:0;line-height:1.8}.payment-summary{border:1px solid var(--line);background:#ffffffa6;border-radius:18px;margin-top:40px;padding:clamp(24px,4vw,40px)}.payment-summary h3{margin:0 0 24px;font-size:1.5rem}.payment-stages{grid-template-columns:3fr 5fr 2fr;gap:12px;display:grid}.payment-stages>span{border-top:3px solid var(--ink);font-size:var(--text-small);background:#eaeaea;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding:16px;display:flex}.payment-stages strong{font-size:1.5rem;font-weight:500}.payment-summary p{max-width:72ch;font-size:var(--text-small);color:var(--muted);margin:24px 0}@media(max-width:640px){.workflow-step{grid-template-columns:40px minmax(0,1fr);gap:18px;padding-block:26px}.workflow-marker{flex-direction:column;gap:12px}.payment-stages{grid-template-columns:minmax(0,1fr)}}.services-nav{position:relative}.services-nav-label{align-items:center;gap:3px;display:flex}.submenu-toggle{background:0 0;border:0;justify-content:center;align-items:center;width:30px;min-height:44px;display:inline-flex}.submenu-toggle svg{width:16px;height:16px}.services-dropdown{border:1px solid var(--line);background:#fff;border-radius:12px;width:280px;padding:10px;list-style:none;position:absolute;top:100%;left:-16px;box-shadow:0 16px 32px #00000014}.services-dropdown a{border-radius:8px;padding:14px 12px;display:block}.services-dropdown a:hover,.services-dropdown a:focus-visible{background:#f0f0f0}.service-active{text-underline-offset:6px;text-decoration:underline}.service-hero{padding-block:clamp(40px,6vw,80px)}.service-page h1,.service-page h2,.service-page h3{font-family:Playfair Display,Georgia,serif;font-weight:400}.service-card{border:1px solid var(--line);background:linear-gradient(145deg,#fff,#f6f6f6);border-radius:20px;padding:clamp(24px,3vw,36px)}.service-button{color:#fff;text-align:center;background:#171717;border-radius:10px;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:13px 18px;font-size:.8125rem;font-weight:500;line-height:1.5;display:inline-flex}.service-button:hover{background:#383838}.service-button svg{flex-shrink:0;width:20px;height:20px}.service-button-light{color:#171717;background:#fff;border:1px solid #ccc}.service-button-light:hover{background:#eee}.service-form label{font-size:.875rem;font-weight:500;display:block}.service-form input,.service-form select,.service-form textarea{color:#171717;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #b7b7b7;border-radius:8px;margin-top:8px;padding:12px;display:block}.service-form input[type=file]{font-size:.8125rem;overflow:hidden}.service-form input[type=file]::file-selector-button{background:#e5e5e5;border:0;border-radius:4px;margin-right:8px;padding:4px 8px}.service-form textarea{resize:vertical}.service-sticky{z-index:15;padding:14px var(--page-gutter) max(14px,env(safe-area-inset-bottom));background:#fffffff7;border-top:1px solid #ddd;justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 30px #00000008}body:has(.has-service-cta){padding-bottom:110px}html{scroll-padding-bottom:120px}@media(max-width:800px){.site-header .menu-toggle{justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.site-header .main-nav{border-bottom:1px solid var(--line);background:#fff;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 72px);padding:10px 22px 22px;display:none;position:absolute;top:72px;left:0;right:0;overflow-y:auto}.site-header .main-nav.is-open{display:flex}.site-header .main-nav>a:not(.nav-contact){border-bottom:1px solid var(--line);padding:14px 0}.site-header .nav-contact{align-self:flex-start;margin:16px 0 0}.services-nav-label{border-bottom:1px solid var(--line);justify-content:space-between}.services-nav-label>a{flex:1;padding-block:14px}.submenu-toggle{width:44px}.services-dropdown{width:100%;box-shadow:none;background:#f5f5f5;border:0;border-radius:0;padding:4px 0 4px 12px;position:static}}@media(max-width:640px){.site-header .main-nav{max-height:calc(100dvh - 66px);top:66px}.service-sticky>div{display:none}.service-sticky .service-button{width:100%}}.procedure-content .workflow-section{background:radial-gradient(at 0 30%,#e4e7e9,#0000 55%),linear-gradient(145deg,#f8f8f8,#efefef)}.procedure-content .workflow-list{border:0;gap:20px;display:grid}.procedure-content .workflow-step{background:#ffffff7a;border:1px solid #fffffff2;border-radius:24px;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:32px;padding:32px;box-shadow:0 8px 28px #00000006,inset 0 1px #fff}.procedure-content .workflow-marker{flex-direction:column-reverse;gap:12px;padding:0}.procedure-content .workflow-number{letter-spacing:.12em;color:#565656;font-size:.75rem;font-weight:500}.workflow-icon-glass{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(135deg,#ffffffd9,#d6dbdf8c);border:1px solid #fffffff2;border-radius:22px;place-items:center;width:88px;height:88px;display:grid;box-shadow:0 8px 20px #00000014,inset 0 1px #fff,inset 0 -1px #0000000a}.procedure-content .workflow-icon-glass svg{color:#242424;width:42px;height:42px}.procedure-content .workflow-copy{min-width:0;padding-top:4px}.procedure-content .workflow-copy h3{margin:10px 0 14px}.procedure-content .workflow-copy p{max-width:68ch}.procedure-content .process-arrow{color:#f2f2f2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(135deg,#fff3,#ffffff0f);border:1px solid #ffffff47;border-radius:16px;place-items:center;width:56px;height:56px;display:grid;top:22px;right:20px;box-shadow:0 6px 18px #00000024,inset 0 1px #ffffff38}.procedure-content .process-arrow svg{width:28px;height:28px}.procedure-content .process-step h3{margin-top:52px}@media(max-width:640px){.procedure-content .workflow-list{gap:16px}.procedure-content .workflow-step{border-radius:20px;grid-template-columns:68px minmax(0,1fr);gap:18px;padding:24px 18px}.workflow-icon-glass{border-radius:18px;width:64px;height:64px}.procedure-content .workflow-icon-glass svg{width:34px;height:34px}.procedure-content .workflow-copy{padding:0}.procedure-content .workflow-copy h3{font-size:1.375rem}.procedure-content .workflow-label{letter-spacing:.025em}}@media(max-width:400px){.procedure-content .workflow-step{grid-template-columns:minmax(0,1fr);gap:20px}.procedure-content .workflow-marker{flex-direction:row-reverse;justify-content:flex-end;gap:16px}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}

/* Glass payment panel and individual payment stages on Prosedur. */
.procedure-content .payment-summary {
  border: 1px solid rgba(255,255,255,.95);
  border-radius: 24px;
  background: linear-gradient(135deg,rgba(255,255,255,.76),rgba(226,231,234,.48));
  box-shadow: 0 12px 32px rgba(0,0,0,.055),inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
.procedure-content .payment-stages { gap: 16px; }
.procedure-content .payment-stages > span {
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.95);
  border-radius: 16px;
  background: linear-gradient(135deg,rgba(255,255,255,.85),rgba(214,219,223,.55));
  box-shadow: 0 8px 20px rgba(0,0,0,.065),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(0,0,0,.04);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  color: #242424;
}
@media (max-width: 640px) {
  .procedure-content .payment-summary { border-radius: 20px; }
  .procedure-content .payment-stages { gap: 12px; }
  .procedure-content .payment-stages > span { padding: 18px 20px; }
}

/* Mobile glass navigation and footer. Desktop layout stays shared. */
.mobile-menu-backdrop { display: none; }
.menu-toggle-icon { position: relative; display: block; width: 20px; height: 2px; border-radius: 2px; background: currentColor; transition: background .18s ease; }
.menu-toggle-icon::before,.menu-toggle-icon::after { content: ''; position: absolute; left: 0; width: 20px; height: 2px; border-radius: 2px; background: currentColor; transition: transform .2s ease; }
.menu-toggle-icon::before { transform: translateY(-6px); }
.menu-toggle-icon::after { transform: translateY(6px); }
.menu-toggle[aria-expanded=true] .menu-toggle-icon { background: transparent; }
.menu-toggle[aria-expanded=true] .menu-toggle-icon::before { transform: rotate(45deg); }
.menu-toggle[aria-expanded=true] .menu-toggle-icon::after { transform: rotate(-45deg); }
.submenu-toggle svg { transition: transform .2s ease; }
.submenu-toggle[aria-expanded=true] svg { transform: rotate(180deg); }
@media (max-width: 800px) {
  :root { --mobile-nav-height: 72px; }
  .site-header {
    background: rgba(255,255,255,.72);
    border-bottom: 1px solid rgba(255,255,255,.65);
    box-shadow: 0 6px 24px rgba(22,28,35,.06);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
  }
  .site-header .nav-shell { height: var(--mobile-nav-height); padding-inline: max(18px,env(safe-area-inset-left)); border: 0; gap: 16px; }
  .site-header .brand { width: 132px; height: 50px; }
  .site-header .menu-toggle {
    display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0;
    color: #20252a; border: 1px solid rgba(255,255,255,.8); border-radius: 14px;
    background: rgba(255,255,255,.55); box-shadow: inset 0 1px 0 #fff,0 3px 12px rgba(0,0,0,.05);
  }
  .mobile-menu-backdrop { display: block; position: fixed; inset: 0; z-index: 18; background: rgba(15,23,32,.16); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s ease,visibility .2s ease; }
  .mobile-menu-open { overflow: hidden; }
  .mobile-menu-open .mobile-menu-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
  .site-header .main-nav {
    display: flex; position: absolute; top: calc(var(--mobile-nav-height) + 10px); left: 12px; right: 12px;
    flex-direction: column; align-items: stretch; gap: 0; padding: 12px;
    max-height: calc(100vh - var(--mobile-nav-height) - 26px);
    max-height: calc(100dvh - var(--mobile-nav-height) - 26px - env(safe-area-inset-bottom));
    overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin;
    background: rgba(255,255,255,.78); color: #20252a;
    border: 1px solid rgba(255,255,255,.72); border-radius: 22px;
    box-shadow: 0 20px 48px rgba(15,23,32,.14),inset 0 1px 0 rgba(255,255,255,.95);
    -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
    opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-8px);
    transition: opacity .2s ease,transform .2s ease,visibility .2s ease;
    font-size: .9375rem; line-height: 1.5; letter-spacing: 0;
  }
  .site-header .main-nav.is-open { display: flex; opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
  .site-header .main-nav > a:not(.nav-contact),.site-header .services-nav-label > a { display: flex; align-items: center; min-height: 48px; padding: 12px 14px; font-weight: 500; }
  .site-header .main-nav > a:not(.nav-contact) { border-bottom: 1px solid rgba(36,44,52,.1); }
  .site-header .services-nav-label { border-bottom: 1px solid rgba(36,44,52,.1); }
  .site-header .main-nav a[aria-current=page] { text-decoration: none; background: rgba(255,255,255,.62); border-radius: 10px; font-weight: 600; }
  .site-header .main-nav a:hover { color: #101820; background: rgba(255,255,255,.55); }
  .site-header .submenu-toggle { width: 44px; min-height: 44px; margin-right: 3px; color: #20252a; border-radius: 10px; }
  .site-header .services-dropdown { width: auto; margin: 6px 4px 8px; padding: 5px; border: 1px solid rgba(255,255,255,.6); border-radius: 12px; background: rgba(255,255,255,.4); }
  .site-header .services-dropdown a { min-height: 44px; display: flex; align-items: center; padding: 10px 12px; font-size: .875rem; overflow-wrap: anywhere; }
  .site-header .main-nav .nav-contact { width: 100%; min-height: 48px; align-self: stretch; justify-content: center; margin: 12px 0 0; padding: 12px 16px; border: 1px solid rgba(255,255,255,.25); border-radius: 12px; background: #252a30; color: #fff; font-weight: 600; box-shadow: 0 4px 12px rgba(0,0,0,.1); }
  .site-header .main-nav .nav-contact:hover,.site-header .main-nav .nav-contact[aria-current=page] { background: #12171c; color: #fff; }
  .site-header :focus-visible { outline: 2px solid #303b45; outline-offset: -3px; }
  .site-footer { padding: 28px 18px max(24px,env(safe-area-inset-bottom)); background: radial-gradient(ellipse at 0 30%,#dfe4e8,transparent 65%),linear-gradient(135deg,#f7f8f9,#edf0f2); border-top: 1px solid rgba(255,255,255,.8); }
  .site-footer .footer-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; min-height: 0; padding: 0 2px 22px; border-bottom: 1px solid rgba(50,60,70,.12); }
  .site-footer .brand-footer { width: 132px; height: 50px; }
  .site-footer .back-top { width: auto; min-height: 44px; padding: 8px 0; font-size: .75rem; }
  .site-footer .footer-navigation { grid-template-columns: minmax(0,1fr); gap: 16px; padding-block: 22px; border-bottom: 0; }
  .site-footer .footer-navigation > nav { min-width: 0; padding: 22px; border: 1px solid rgba(255,255,255,.75); border-radius: 18px; background: rgba(255,255,255,.55); box-shadow: 0 7px 24px rgba(28,38,48,.04),inset 0 1px 0 rgba(255,255,255,.95); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
  .site-footer .footer-navigation h2 { margin-bottom: 12px; font-size: .6875rem; letter-spacing: .12em; color: #424b53; }
  .site-footer .footer-menu { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 16px; }
  .site-footer .footer-navigation a { display: flex; min-height: 44px; padding-block: 10px; font-size: .875rem; line-height: 1.6; overflow-wrap: anywhere; color: #252c33; }
  .site-footer > p { padding: 0 4px 22px; font-size: .8125rem; line-height: 1.8; color: #505a63; }
  .site-footer .footer-bottom { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px 12px; padding: 20px 4px 0; border-top: 1px solid rgba(50,60,70,.12); font-size: .6875rem; letter-spacing: .04em; color: #505a63; }
  .site-footer .footer-bottom > span { grid-column: 1 / -1; line-height: 1.8; }
  .site-footer .footer-bottom > a { min-height: 44px; display: inline-flex; align-items: center; font-size: .8125rem; letter-spacing: 0; }
  .site-footer .footer-bottom > a:last-child { grid-column: 1 / -1; font-size: .6875rem; letter-spacing: .06em; }
}
@media (max-width: 640px) { :root { --mobile-nav-height: 66px; } }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  @media (max-width: 800px) { .site-header,.site-header .main-nav,.site-footer .footer-navigation > nav { background: rgba(250,251,252,.97); } }
}
@media (prefers-reduced-motion: reduce) {
  .site-header .main-nav,.mobile-menu-backdrop,.menu-toggle-icon,.menu-toggle-icon::before,.menu-toggle-icon::after,.submenu-toggle svg { transition: none; }
}

/* Blur the navbar on its own layer so the dropdown can blur the page behind it. */
@media (max-width: 800px) {
  .site-header { background: transparent; border: 0; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .site-header::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: rgba(255,255,255,.72); border-bottom: 1px solid rgba(255,255,255,.65); box-shadow: 0 6px 24px rgba(22,28,35,.06); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  @media (max-width: 800px) { .site-header::before { background: rgba(250,251,252,.97); } }
}
@media (max-width: 800px) {
  .mobile-menu-backdrop { -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
  .site-header .main-nav { background: rgba(255,255,255,.86); }
}

/* Consistent compact icons throughout the Prosedur page. */
.procedure-content .workflow-icon-glass,
.procedure-content .process-arrow {
  width: 40px;
  height: 40px;
  border-radius: 11px;
  flex-shrink: 0;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.procedure-content .workflow-icon-glass svg,
.procedure-content .process-arrow svg {
  display: block;
  width: 18px;
  height: 18px;
  stroke-width: 1.5;
}
.procedure-content .workflow-step { grid-template-columns: 56px minmax(0,1fr); gap: 24px; }
.procedure-content .process-step-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 40px; }
.procedure-content .process-arrow { position: static; box-shadow: 0 4px 12px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.22); }
.procedure-content .process-step h3 { margin-top: 24px; }
@media (max-width: 640px) {
  .procedure-content .workflow-step { grid-template-columns: 40px minmax(0,1fr); gap: 18px; }
}
@media (max-width: 400px) {
  .procedure-content .workflow-step { grid-template-columns: minmax(0,1fr); gap: 18px; }
}

/* Fill the opening viewport and keep the banner flush with the studio section. */
.hero {
  --hero-header-height: 78px;
  width: 100%;
  margin: var(--hero-header-height) 0 0;
  height: auto;
  min-height: calc(100vh - var(--hero-header-height));
  min-height: calc(100svh - var(--hero-header-height));
  isolation: isolate;
}
.hero > picture {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -2;
}
.hero > picture > .hero-image {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}
.hero-shade { z-index: -1; }
.hero + .intro { margin-top: 0; padding-top: clamp(32px, 4vw, 64px); }
@media (max-width: 900px) {
  .hero { --hero-header-height: 72px; }
}
@media (max-width: 640px) {
  .hero { --hero-header-height: 66px; }
}

/* Preserve the uploaded portrait compositions, including their captions. */
.project-grid .project-card-portrait .project-image-link { aspect-ratio: 4 / 5; }
.project-card-portrait .project-image-link img { object-fit: contain; filter: none; }
.project-card-portrait .project-image-link:hover img { transform: none; }

/* Keep calculator controls and icons aligned on desktop and mobile. */
#kalkulator .service-form select {
  -webkit-appearance: none;
  appearance: none;
  min-height: 50px;
  padding: 12px 48px 12px 16px;
  line-height: 1.5;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23404040' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 20px 20px;
}
#kalkulator [data-estimate-link] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  line-height: 1.5;
}
#kalkulator [data-estimate-link] svg {
  display: block;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
}

/* Render the primary content immediately; keep small labels readable. */
.hero-image,.hero-copy { animation: none; }
.service-number { color: #626262; }
/* Muted service labels still meet contrast requirements on the light page background. */
.inner-page .text-neutral-500 { color: #626262; }
