/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-border-style:solid}}}@layer theme{:host,:root{--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-neutral-900:oklch(20.5% 0 none);--color-black:#000;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-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,pre,samp{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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-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}.static{position:static}.hidden{display:none}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.pc-card-wrapper{--pointer-x:50%;--pointer-y:50%;--pointer-from-center:0;--pointer-from-top:.5;--pointer-from-left:.5;--card-opacity:0;--rotate-x:0deg;--rotate-y:0deg;--background-x:50%;--background-y:50%;--grain:none;--icon:none;--behind-glow-color:#7dbeffab;--behind-glow-size:25%;--inner-gradient:none;--sunpillar-1:#ff7a75;--sunpillar-2:#ffed61;--sunpillar-3:#a8ff61;--sunpillar-4:#85fff7;--sunpillar-5:#7a95ff;--sunpillar-6:#d875ff;--sunpillar-clr-1:var(--sunpillar-1);--sunpillar-clr-2:var(--sunpillar-2);--sunpillar-clr-3:var(--sunpillar-3);--sunpillar-clr-4:var(--sunpillar-4);--sunpillar-clr-5:var(--sunpillar-5);--sunpillar-clr-6:var(--sunpillar-6);--card-radius:30px;perspective:500px;touch-action:none;position:relative;transform:translateZ(.1px)}.pc-behind{z-index:0;pointer-events:none;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),var(--behind-glow-color) 0,transparent var(--behind-glow-size));filter:blur(42px)saturate(.85);opacity:calc(.34 * var(--card-opacity));transition:opacity .2s;position:absolute;inset:0}.pc-card-wrapper.active,.pc-card-wrapper:hover{--card-opacity:.72}.pc-card-shell{z-index:1;position:relative}.pc-card{aspect-ratio:.718;border-radius:var(--card-radius);background-blend-mode:color-dodge,normal,normal,normal;backface-visibility:hidden;max-width:min(88vw,388px);height:min(72svh,540px);box-shadow:#000c calc((var(--pointer-from-left) * 10px) - 3px) calc((var(--pointer-from-top) * 20px) - 6px) 20px -5px,0 32px 90px #00000061;background:#000000e6;transition:transform 1s;animation:pc-glow-bg 12s linear infinite;display:grid;position:relative;overflow:hidden;transform:translateZ(0)rotateX(0)rotateY(0)}.pc-card-shell.active .pc-card,.pc-card:hover{transform:translateZ(0) rotateX(var(--rotate-y)) rotateY(var(--rotate-x));transition:none}.pc-card-shell.entering .pc-card{transition:transform .18s ease-out}.pc-card *{border-radius:var(--card-radius);pointer-events:none;grid-area:1/-1;display:grid}.pc-card .split-text,.pc-card .split-text__unit{border-radius:0;grid-area:auto;display:inline-block}.pc-inside{background-color:#000000e6;background-image:var(--inner-gradient);position:absolute;inset:0;transform:none}.pc-shine{z-index:3;-webkit-mask-image:var(--icon);mask-image:var(--icon);-webkit-mask-mode:luminance;-webkit-mask-size:150%;mask-size:150%;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-source-type:luminance;mask-mode:luminance;-webkit-mask-position:top calc(200% - (var(--background-y) * 5)) left calc(100% - var(--background-x));mask-position:top calc(200% - (var(--background-y) * 5)) left calc(100% - var(--background-x));filter:brightness(.66)contrast(1.33)saturate(.33)opacity(.5);mix-blend-mode:color-dodge;transition:filter .8s;animation:pc-holo-bg 18s linear infinite;overflow:hidden;transform:translateZ(1px)}.pc-shine,.pc-shine:after{--space:5%;--angle:-45deg;background:repeating-linear-gradient(0deg,var(--sunpillar-clr-1) calc(var(--space) * 1),var(--sunpillar-clr-2) calc(var(--space) * 2),var(--sunpillar-clr-3) calc(var(--space) * 3),var(--sunpillar-clr-4) calc(var(--space) * 4),var(--sunpillar-clr-5) calc(var(--space) * 5),var(--sunpillar-clr-6) calc(var(--space) * 6),var(--sunpillar-clr-1) calc(var(--space) * 7)),repeating-linear-gradient(var(--angle),#0e152e 0,#8fa3a3 3.8%,#8fc1c1 4.5%,#8fa3a3 5.2%,#0e152e 10%,#0e152e 12%),radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),#0000001a 12%,#00000026 20%,#00000040 120%);background-position:0 var(--background-y),var(--background-x) var(--background-y),50%;background-blend-mode:color,hard-light;background-repeat:repeat;background-size:500% 500%,300% 300%,200% 200%}.pc-shine:after,.pc-shine:before{content:"";opacity:0;background-position:50%;background-size:cover;grid-area:1/1;transition:opacity .8s}.pc-card-shell.active .pc-shine,.pc-card:hover .pc-shine{filter:brightness(.58)contrast(1.08)saturate(.28)opacity(.38);animation-play-state:paused}.pc-card-shell.active .pc-shine:after,.pc-card-shell.active .pc-shine:before,.pc-card:hover .pc-shine:after,.pc-card:hover .pc-shine:before{opacity:.28}.pc-shine:before{background-image:linear-gradient(45deg,var(--sunpillar-4),var(--sunpillar-5),var(--sunpillar-6),var(--sunpillar-1),var(--sunpillar-2),var(--sunpillar-3)),radial-gradient(circle at var(--pointer-x) var(--pointer-y),#b3b3b3 0,#4d4d4d33 90%),var(--grain);background-position:var(--pointer-x) var(--pointer-y),50%,calc(var(--pointer-x) * .01) calc(var(--pointer-y) * .01);background-blend-mode:color-dodge;filter:brightness(calc(1.05 - (var(--pointer-from-center) * .18))) contrast(1.05) saturate(calc(.24 + (var(--pointer-from-center) * .16)));mix-blend-mode:luminosity;background-size:250% 250%,100% 100%,220px 220px}.pc-shine:after{background-position:0 var(--background-y),calc(var(--background-x) * .4) calc(var(--background-y) * .5),50%;filter:brightness(.8)contrast(1.5);mix-blend-mode:difference;background-size:200% 300%,700% 700%,100% 100%}.pc-glare{z-index:4;background-image:radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),#c3bfd9 12%,#2e506bcc 90%);filter:brightness(.8)contrast(1.2);mix-blend-mode:overlay;opacity:.44;overflow:hidden;transform:translateZ(1.1px)}.pc-avatar-content{backface-visibility:hidden;mix-blend-mode:luminosity;position:relative;overflow:hidden;transform:translateZ(2px)}.pc-avatar-content .avatar{object-fit:cover;object-position:46% top;backface-visibility:hidden;width:calc(100% + 12px);height:calc(100% + 2px);transform:translateX(calc((var(--pointer-from-left) - .5) * 4px)) translateZ(0) scaleY(calc(1 + (var(--pointer-from-top) - .5) * .02)) scaleX(calc(1 + (var(--pointer-from-left) - .5) * .01));transform-origin:50% 100%;will-change:transform;transition:transform .12s ease-out;position:absolute;bottom:-1px;left:-6px}.pc-avatar-content:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#0000,#000a161a 48%,#000a1638),linear-gradient(#0000 50%,#00000047);position:absolute;inset:0}.pc-user-info{--ui-inset:20px;--ui-radius-bias:6px;right:var(--ui-inset);bottom:var(--ui-inset);left:var(--ui-inset);z-index:2;border-radius:calc(max(0px, var(--card-radius) - var(--ui-inset) + var(--ui-radius-bias)));-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);pointer-events:auto;background:#08080e57;border:1px solid #ffffff24;justify-content:space-between;padding:12px 14px;position:absolute}.pc-user-details,.pc-user-info{align-items:center;gap:12px;display:flex}.pc-user-details{flex:auto;min-width:0}.pc-mini-avatar{aspect-ratio:1;clip-path:circle(50%);border:1px solid #ffffff38;border-radius:9999px;flex:0 0 48px;width:48px;min-width:48px;max-width:48px;height:48px;position:relative;overflow:hidden}.pc-mini-avatar img{object-fit:cover;border-radius:9999px;grid-area:auto;width:100%;height:100%;display:block}.pc-user-text{flex-direction:column;flex:auto;align-items:flex-start;gap:6px;min-width:0;display:flex}.pc-handle{color:#ffffffeb;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.pc-handle,.pc-status{font-size:14px;line-height:1}.pc-status{color:#ffffffb8}.pc-contact-btn{color:#fffffff0;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:8px;justify-content:center;align-items:center;min-width:5rem;min-height:2.75rem;padding:0 16px;font-size:12px;font-weight:700;line-height:1;transition:border-color .2s,background .2s,transform .2s;display:inline-flex}.pc-contact-btn:hover{background:#ffffff2b;border-color:#ffffff6b;transform:translateY(-1px)}.pc-contact-btn:focus-visible{outline-offset:3px;outline:3px solid #99f6e4}.pc-content:not(.pc-avatar-content){z-index:5;text-align:center;mix-blend-mode:luminosity;max-height:100%;transform:translate3d(calc(var(--pointer-from-left) * -6px + 3px),calc(var(--pointer-from-top) * -6px + 3px),.1px);position:relative;overflow:hidden}.pc-details{flex-direction:column;width:100%;padding-inline:18px;display:flex;position:absolute;top:3em}.pc-details h3{background-image:linear-gradient(#fff,#bbb7ff);margin:0;font-size:min(5svh,3em);line-height:1}.pc-details h3,.pc-details p{color:#0000;-webkit-text-fill-color:transparent;background-size:1em 1.5em;-webkit-background-clip:text;background-clip:text;font-weight:700}.pc-details p{white-space:nowrap;background-image:linear-gradient(#fff,#7c86f5);width:min-content;margin:0 auto;font-size:16px;line-height:1.2;position:relative;top:-10px}.profile-card-section{color:var(--color-light);background:0 0;margin:clamp(3.25rem,7vw,6.5rem) 0;padding:0;position:relative;overflow:hidden}.profile-card-section:before{content:none}.profile-card-section__inner{grid-template-columns:minmax(18rem,28rem) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,6rem);width:min(100%,74rem);margin:0 auto;display:grid;position:relative}.profile-card-section__stage{justify-items:start;display:grid}.profile-card-section__info{max-width:38rem}.profile-card-section__eyebrow{color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:900}.profile-card-section__info h2{color:var(--color-light);letter-spacing:0;margin:0;font-size:clamp(2.4rem,5vw,5.8rem);font-weight:900;line-height:.9}.profile-card-section__info p:not(.profile-card-section__eyebrow){color:#f5f5f5b8;margin:clamp(1rem,2vw,1.35rem) 0 0;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.55}.profile-card-section__facts{flex-wrap:wrap;gap:.6rem;margin-top:clamp(1.25rem,2.5vw,1.8rem);display:flex}.profile-card-section__facts span{color:#f5f5f5d1;background:#f5f5f50e;border:1px solid #f5f5f529;border-radius:999px;padding:.55rem .8rem;font-size:.78rem;font-weight:800}@keyframes pc-glow-bg{0%{--bgrotate:0deg}to{--bgrotate:360deg}}@keyframes pc-holo-bg{0%{background-position:0 var(--background-y),0 0,50%}to{background-position:0 var(--background-y),90% 90%,50%}}@media (max-width:900px){.profile-card-section__inner{grid-template-columns:1fr;justify-items:center;width:100%}.profile-card-section__stage{justify-items:center}.profile-card-section__info{text-align:center}.profile-card-section__facts{justify-content:center}}@media (max-width:768px){.pc-card{height:min(68svh,450px)}.pc-details{top:2em}.pc-details h3{font-size:min(4svh,2.5em)}.pc-details p{font-size:14px}.pc-user-info{--ui-inset:15px;padding:10px 12px}.pc-mini-avatar{flex-basis:32px;width:32px;min-width:32px;max-width:32px;height:32px}.pc-user-details{gap:10px}.pc-handle{font-size:13px}.pc-status{font-size:10px}.pc-contact-btn{min-width:4.7rem;min-height:44px;padding:0 12px;font-size:11px}}@media (max-width:480px){.profile-card-section{padding-inline:1rem}.pc-card{height:min(60svh,380px)}.pc-details{top:1.5em}.pc-details h3{font-size:min(3.5svh,2em)}.pc-details p{font-size:12px;top:-8px}.pc-user-info{--ui-inset:12px;padding:8px 10px}.pc-mini-avatar{flex-basis:28px;width:28px;min-width:28px;max-width:28px;height:28px}.pc-user-details{gap:8px}.pc-handle{font-size:11px}.pc-status{font-size:9px}.pc-contact-btn{min-width:4rem;min-height:44px;padding:0 10px;font-size:10px}}@media (max-width:320px){.pc-card{height:min(55svh,320px)}.pc-details h3{font-size:min(3svh,1.5em)}.pc-details p{font-size:11px}.pc-user-info{padding:6px 8px}.pc-mini-avatar{flex-basis:22px;width:22px;min-width:22px;max-width:22px;height:22px}.pc-user-details{gap:6px}.pc-handle{font-size:11px}.pc-status{font-size:8px}.pc-contact-btn{min-width:3.5rem;min-height:44px;padding:0 8px;font-size:9px}}@media (prefers-reduced-motion:reduce){.pc-card,.pc-contact-btn,.pc-shine{transition:none;animation:none}}:root{--color-neutral-900:#0a0a0a;--color-light:#f5f5f5;--color-black:#000;--color-dark-rgb:0,0,0;--size-font:16px;--section-padding:4rem;--container-padding:1.5rem;color-scheme:dark}body{background-color:var(--color-black);color:var(--color-light);font-size:var(--size-font);margin:0;padding:0}a,button,input,select,summary,textarea{touch-action:manipulation;-webkit-tap-highlight-color:#4aa3ff33}#galeria,#o-mne{scroll-margin-top:clamp(1.5rem,5vw,4rem)}.skip-link{z-index:9999;background:var(--color-light);color:var(--color-black);border-radius:999px;padding:.75rem 1rem;font-size:.9rem;font-weight:800;text-decoration:none;transition:transform .18s;position:fixed;top:1rem;left:1rem;transform:translateY(-150%)}.skip-link:focus-visible{outline-offset:3px;outline:2px solid #ffffffa6;transform:translateY(0)}.split-text,.split-text__unit{display:inline-block}.split-text__unit{opacity:0;white-space:pre;will-change:opacity,transform}.parallax__fade{--color-dark-rgb:0,0,0;background:linear-gradient(to top,rgba(var(--color-dark-rgb),1) 0,rgba(var(--color-dark-rgb),.738) 19%,rgba(var(--color-dark-rgb),.541) 34%,rgba(var(--color-dark-rgb),.382) 47%,rgba(var(--color-dark-rgb),.278) 56.5%,rgba(var(--color-dark-rgb),.194) 65%,rgba(var(--color-dark-rgb),.126) 73%,rgba(var(--color-dark-rgb),.075) 80.2%,rgba(var(--color-dark-rgb),.042) 86.1%,rgba(var(--color-dark-rgb),.021) 91%,rgba(var(--color-dark-rgb),.008) 95.2%,rgba(var(--color-dark-rgb),.002) 98.2%,transparent 100%)}.parallax__header{z-index:2;padding:var(--section-padding) var(--container-padding);justify-content:center;align-items:center;min-height:100svh;display:flex;position:relative}.parallax{width:100%;position:relative;overflow:hidden}.parallax__content{padding:clamp(8rem,19svh,13rem) var(--container-padding) var(--section-padding);background-color:var(--color-black);justify-content:center;align-items:flex-start;min-height:100svh;display:flex;position:relative}.parallax__gallery-wrap{flex-direction:column;align-items:center;gap:clamp(2rem,4vw,3.75rem);width:min(100%,96rem);margin-inline:auto;display:flex}.intro-copy{text-align:center;width:min(100%,76rem);margin:0 auto}.intro-copy h2{color:var(--color-light);letter-spacing:0;margin:0;padding:.16em 0 .22em;font-size:clamp(2.7rem,5.6vw,5.8rem);font-weight:900;line-height:.94}.intro-copy h2>.split-text{display:block;overflow:visible}.intro-copy p{color:#f5f5f5d1;width:min(100%,54rem);margin:clamp(1.1rem,2.1vw,1.8rem) auto 0;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.35}.hover-reveal-cards.intro-featured-cards{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,94rem);max-width:none;margin:clamp(.75rem,1.8vw,1.5rem) auto 0;padding:0}.intro-featured-cards .hover-reveal-card{min-height:clamp(15rem,25vw,22rem)}.gallery-copy{text-align:center;width:min(100%,76rem);margin:0 auto}.gallery-heading{color:var(--color-light);letter-spacing:0;margin:0;font-size:clamp(2.4rem,6vw,6.5rem);font-weight:900;line-height:.9}.gallery-copy p{color:#f5f5f5c2;width:min(100%,48rem);margin:clamp(.9rem,1.8vw,1.4rem) auto 0;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.45}.gallery-copy+.masonry-grid{margin-top:clamp(2.75rem,4.5vw,4.5rem)}.parallax__visuals{height:120%}.parallax__layers,.parallax__visuals{object-fit:cover;width:100%;max-width:none;position:absolute;top:0;left:0}.parallax__layers{height:100%;overflow:hidden}.parallax__fade{z-index:30;object-fit:cover;width:100%;max-width:none;height:42%;position:absolute;bottom:0;left:0}.parallax__black-line-overflow{z-index:20;background-color:var(--color-black);width:100%;height:2px;position:absolute;bottom:-1px;left:0}.parallax__title{pointer-events:auto;-webkit-user-select:none;user-select:none;text-align:center;text-transform:none;color:#fff;text-shadow:0 2px 20px #00000080;margin-top:0;margin-bottom:.1em;margin-right:.075em;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13vw;font-weight:800;line-height:1;position:relative;transform:translateY(clamp(-2.5rem,-4svh,-1.25rem))}.parallax__hero-content{bottom:max(1.75rem,calc(env(safe-area-inset-bottom) + 0.75rem));z-index:40;width:min(calc(100% - (var(--container-padding) * 2)),80rem);grid-template-columns:minmax(0,42rem) auto;align-items:end;gap:clamp(1.5rem,4vw,4rem);display:grid;position:absolute;left:50%;transform:translate(-50%)}.parallax__hero-copy{min-width:0;color:var(--color-light);text-shadow:0 .2rem 1.5rem #000000b8}.parallax__hero-eyebrow{color:#9bd2ff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .65rem;font-size:.85rem;font-weight:900;line-height:1.2}.parallax__hero-copy h2{color:#fff;letter-spacing:-.025em;text-wrap:balance;max-width:40rem;margin:0;font-size:clamp(1.85rem,3.4vw,3.25rem);font-weight:900;line-height:.98}.parallax__hero-copy>p:last-child{color:#ffffffd1;text-wrap:pretty;max-width:36rem;margin:.8rem 0 0;font-size:clamp(1rem,1.3vw,1.08rem);line-height:1.5}.parallax__hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.parallax__hero-actions .button{white-space:nowrap;min-width:10.5rem;min-height:3rem}.parallax__layer-title{z-index:5;justify-content:center;align-items:center;width:100%;height:100svh;display:flex;position:absolute;top:0;left:0}@media (max-width:720px){.parallax__hero-content{bottom:max(1rem,env(safe-area-inset-bottom));grid-template-columns:1fr;gap:1rem}.parallax__hero-copy h2{max-width:21rem;font-size:clamp(1.75rem,8vw,2.35rem)}.parallax__hero-copy>p:last-child{max-width:21rem;margin-top:.6rem;font-size:1rem;line-height:1.4}.parallax__hero-actions{justify-content:flex-start}.parallax__hero-actions .button{flex:9.5rem;min-width:0}.parallax__layer-img[data-parallax-layer="4"]{top:auto;bottom:-2%;height:auto;width:100%;max-width:none}}@media (max-width:420px) and (max-height:700px){.parallax__hero-eyebrow{margin-bottom:.45rem}.parallax__hero-copy>p:last-child{display:none}}.parallax__layer-img{pointer-events:none;object-fit:cover;object-position:center 58%;width:100%;max-width:none;height:135%;position:absolute;top:-18%;left:0}.parallax__layer-img.is-third{top:-6%}.parallax__layer-img[data-parallax-layer="1"],.parallax__layer-img[data-parallax-layer="2"]{z-index:1}.parallax__layer-title{z-index:4}.parallax__layer-img[data-parallax-layer="4"]{z-index:8;object-position:center 72%;top:-8%;height:118%}.masonry-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:clamp(9rem,13vw,15rem);gap:1rem;width:100%;display:grid}.masonry-card{opacity:1;background-color:#111;border-radius:1rem;grid-row:span 2;margin:0;position:relative;overflow:hidden;transform:none}.masonry-card,.masonry-card img{width:100%;height:100%;display:block}.masonry-card img{object-fit:cover;transition:transform .5s}.masonry-card:nth-child(2),.masonry-card:nth-child(7){grid-column:span 2}.masonry-card:hover img{transform:scale(1.035)}.masonry-card__overlay{color:var(--color-light);background:linear-gradient(#00000094,#00000024 45%,#0000);align-items:flex-start;padding:1rem;display:flex;position:absolute;inset:0}.masonry-card__overlay p{text-shadow:0 .2rem 1rem #000000a6;max-width:14rem;margin:0;font-size:.95rem;font-weight:700;line-height:1.15}.gallery-empty{color:#f5f5f5b3;text-align:center;background:#f5f5f50b;border:1px solid #f5f5f51f;border-radius:1rem;width:min(100%,42rem);margin:0 auto;padding:clamp(1.25rem,3vw,2rem);font-size:1rem;font-weight:750}.portfolio-page{background:var(--color-black);min-height:100svh;color:var(--color-light);padding:clamp(2rem,5vw,4rem) var(--container-padding) clamp(4rem,8vw,7rem)}.portfolio-page__header{width:min(100%,76rem);margin:0 auto clamp(2.5rem,5vw,4.5rem)}.portfolio-page__back{color:#f5f5f5b8;align-items:center;min-height:44px;font-size:.92rem;font-weight:800;text-decoration:none;transition:color .18s;display:inline-flex}.portfolio-page__back:focus-visible,.portfolio-page__back:hover{color:#25e7dd}.portfolio-page__back:focus-visible{outline-offset:4px;outline:2px solid #25e7ddb8}.portfolio-page__header p{color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;margin:clamp(1.75rem,4vw,3rem) 0 .75rem;font-size:.78rem;font-weight:900}.portfolio-page__header h1{max-width:58rem;color:var(--color-light);letter-spacing:0;margin:0;font-size:clamp(2.7rem,7vw,7rem);font-weight:900;line-height:.9}.portfolio-page__grid{width:min(100%,76rem)}.portfolio-gallery .masonry-card{opacity:1;transform:none}.service-page{background:var(--color-black);min-height:100svh;color:var(--color-light);padding:clamp(2rem,5vw,4rem) var(--container-padding)}.service-page--compact{min-height:auto;padding-bottom:clamp(2rem,5vw,4rem)}.service-page__header{width:min(100%,76rem);margin:0 auto}.service-page__header p{color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;margin:clamp(1.75rem,4vw,3rem) 0 .75rem;font-size:.78rem;font-weight:900}.service-page__header h1{max-width:58rem;color:var(--color-light);letter-spacing:0;margin:0;font-size:clamp(2.7rem,7vw,7rem);font-weight:900;line-height:.9}.legal-page{background:var(--color-black);min-height:100svh;color:var(--color-light);padding:clamp(2rem,5vw,4rem) var(--container-padding) clamp(4rem,8vw,7rem)}.legal-page__inner{width:min(100%,76rem);margin:0 auto}.legal-page__header{margin-top:clamp(1.75rem,4vw,3rem)}.legal-page__header p{color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:900}.legal-page__header h1{max-width:58rem;color:var(--color-light);letter-spacing:0;margin:0;font-size:clamp(2.7rem,7vw,6.5rem);font-weight:900;line-height:.9}.legal-page__header span{color:#f5f5f5ad;max-width:42rem;margin-top:clamp(1rem,2vw,1.35rem);font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.55;display:block}.legal-page__content{gap:1rem;margin-top:clamp(2rem,4vw,3.5rem);display:grid}.legal-page__section{background:#f5f5f50a;border:1px solid #f5f5f51c;border-radius:1rem;padding:clamp(1.1rem,2.6vw,1.65rem)}.legal-page__section h2{color:#fff;letter-spacing:0;margin:0;font-size:clamp(1.15rem,2vw,1.45rem);font-weight:900}.legal-page__section p{color:#f5f5f5b8;margin:.75rem 0 0;font-size:1rem;line-height:1.65}.legal-page__section ul{gap:.55rem;margin:.85rem 0 0;padding:0;list-style:none;display:grid}.legal-page__section li{color:#f5f5f5b8;font-size:1rem;line-height:1.55}.contact-page{background:var(--color-black);min-height:100svh;color:var(--color-light);padding:clamp(2rem,5vw,4rem) var(--container-padding) clamp(4rem,8vw,7rem);position:relative}.contact-page__inner{grid-template-columns:minmax(0,.9fr) minmax(19rem,.7fr);align-items:start;gap:clamp(2rem,6vw,5rem);width:min(100%,76rem);margin:0 auto;transition:filter .22s,opacity .22s;display:grid}.contact-page__inner.is-blurred{filter:blur(10px);opacity:.38;pointer-events:none}.contact-page__copy>p{color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;margin:clamp(1.75rem,4vw,3rem) 0 .75rem;font-size:.78rem;font-weight:900}.contact-page__copy h1{max-width:48rem;color:var(--color-light);letter-spacing:0;margin:0;font-size:clamp(2.8rem,6vw,5.8rem);font-weight:900;line-height:.9}.contact-page__lead{color:#f5f5f5ad;max-width:34rem;margin:clamp(1rem,2vw,1.35rem) 0 0;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.55}.contact-page__details{gap:.95rem;margin-top:clamp(1.75rem,4vw,3rem);display:grid}.contact-page__details a{color:#fff;background:linear-gradient(135deg,#0d264cf5,#04122af5),#06142c;border:1px solid #58a6ff47;border-radius:1rem;gap:.45rem;padding:clamp(1rem,2.5vw,1.35rem);font-size:clamp(1.45rem,3.2vw,2.65rem);font-weight:920;line-height:1;text-decoration:none;transition:border-color .18s,transform .18s,background .18s;display:grid}.contact-page__details a:focus-visible,.contact-page__details a:hover{background:linear-gradient(135deg,#103469fa,#05183afa),#071a3a;border-color:#58a6ffd1;transform:translateY(-2px)}.contact-page__details a:focus-visible{outline-offset:4px;outline:2px solid #58a6ffc2}.contact-page__details span{color:#f5f5f580;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:900}.contact-form{background:#f5f5f50b;border:1px solid #f5f5f51f;border-radius:1rem;gap:1rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.contact-form__eyebrow{color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .25rem;font-size:.78rem;font-weight:900}.contact-form label{color:#f5f5f5b8;gap:.45rem;font-size:.84rem;font-weight:850;display:grid}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--color-light);font:inherit;background:#00000047;border:1px solid #f5f5f524;border-radius:.7rem;outline:none;padding:.85rem .9rem}.contact-form__select-wrap{display:block;position:relative}.contact-form__select-wrap:after{content:"";pointer-events:none;border-bottom:2px solid #aed1ffe6;border-right:2px solid #aed1ffe6;width:.62rem;height:.62rem;position:absolute;top:50%;right:1rem;transform:translateY(-65%)rotate(45deg)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#25e7ddb8;box-shadow:0 0 0 3px #25e7dd1f}.contact-form select{appearance:none;color:#fff;cursor:pointer;background:linear-gradient(135deg,#091f44f0,#030d1ff0),#06142c;border-color:#58a6ff3d;padding-right:2.4rem;transition:border-color .18s,background .18s,box-shadow .18s}.contact-form select:hover{background:linear-gradient(135deg,#0c2a58f5,#04122af5),#071a3a;border-color:#58a6ff8a}.contact-form select option{color:#fff;background:#06142c}.contact-form input[aria-invalid=true]{border-color:#ff6b6bd1;box-shadow:0 0 0 3px #ff6b6b1a}.contact-form__error{color:#ff8c8c;margin:-.45rem 0 0;font-size:.86rem;font-weight:800}.contact-form textarea{resize:vertical}.contact-form button{color:#031111;cursor:pointer;background:#25e7dd;border:0;border-radius:999px;justify-self:end;padding:.82rem 1.15rem;font-size:.92rem;font-weight:900}.contact-form button:disabled{cursor:wait;opacity:.68}.contact-form button:focus-visible,.contact-form button:hover{background:#3ca2fa}.contact-form button:focus-visible{outline-offset:4px;outline:2px solid #3ca2fab8}.contact-success{z-index:80;padding:var(--container-padding);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0000008a;place-items:center;display:grid;position:fixed;inset:0}.contact-success__card{text-align:center;background:#0c0e10e0;border:1px solid #f5f5f52e;border-radius:1.25rem;justify-items:center;width:min(100%,28rem);padding:clamp(1.5rem,4vw,2.4rem);display:grid;box-shadow:0 2rem 8rem #00000085}.contact-success__check{color:#4aa3ff;filter:drop-shadow(0 0 2rem #4aa3ff3d);place-items:center;width:clamp(4.5rem,12vw,6rem);height:clamp(4.5rem,12vw,6rem);display:grid}.contact-success__check svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.55px;width:100%;height:100%}.contact-success__check circle{stroke-dasharray:57;stroke-dashoffset:57px;animation:contact-check-draw .56s cubic-bezier(.22,1,.36,1) forwards}.contact-success__check path{stroke-dasharray:13;stroke-dashoffset:13px;animation:contact-check-draw .42s cubic-bezier(.22,1,.36,1) .42s forwards}.contact-success__card h2{color:#fff;letter-spacing:0;margin:1.25rem 0 0;font-size:clamp(1.8rem,4vw,2.7rem);font-weight:920;line-height:.95}.contact-success__card p{color:#f5f5f5b8;margin:.8rem 0 0;font-size:1rem;line-height:1.45}.contact-success__card button{color:#050505;cursor:pointer;background:#fff;border:0;border-radius:999px;margin-top:1.5rem;padding:.82rem 1.15rem;font-size:.92rem;font-weight:900}.contact-success__card button:focus-visible{outline-offset:4px;outline:2px solid #ffffffb8}@keyframes contact-check-draw{to{stroke-dashoffset:0}}@media (max-width:820px){.contact-page__inner{grid-template-columns:1fr}}.reveal-stack__section{padding:clamp(4rem,8vw,8rem) var(--container-padding)}.reveal-stack__section,.test-section{color:var(--color-light);background:#0a0a0a}.test-section{padding:clamp(3rem,6vw,5rem) var(--container-padding) clamp(5rem,8vw,7rem)}.test-section__details{background:linear-gradient(135deg,#ffffff0e,#ffffff04),#ffffff06;border:1px solid #f5f5f524;border-radius:1rem;width:min(100%,70rem);margin:0 auto;overflow:hidden;box-shadow:0 1.5rem 4rem #00000047}.test-section__summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1.25rem,3vw,2rem);list-style:none;display:flex}.test-section__summary::-webkit-details-marker{display:none}.test-section__summary:after{content:"+";color:#fff;border:1px solid #f5f5f529;border-radius:999px;flex:0 0 2.6rem;place-items:center;width:2.6rem;height:2.6rem;font-size:1.35rem;font-weight:700;display:grid}.test-section__details[open] .test-section__summary:after{content:"-"}.test-section__heading{color:#fff;letter-spacing:0;font-size:clamp(2rem,5vw,4.8rem);font-weight:900;line-height:.9;display:block}.test-section__hint{color:#f5f5f59e;text-align:right;font-size:.92rem;font-weight:700}.test-section__content{gap:clamp(1.25rem,3vw,2rem);padding:0 clamp(1rem,3vw,2rem) clamp(1rem,3vw,2rem);display:grid}.test-section__compare.reveal-stack__section,.test-section__reviews.testimonial-section{background:0 0;padding:0}.test-section__reviews.testimonial-section>div{max-width:70rem}@media (max-width:720px){.test-section__summary{align-items:flex-start}.test-section__hint{max-width:9rem;font-size:.8rem}}.reveal-stack__section--cards{padding-top:clamp(2rem,5vw,5rem)}.reveal-stack__heading{text-align:center;width:min(100%,56rem);margin:0 auto clamp(2rem,4vw,3rem)}.reveal-stack__heading h2{letter-spacing:0;margin:0;font-size:clamp(2.7rem,7vw,7rem);font-weight:800;line-height:.9}.reveal-stack__heading p{color:#f5f5f5b8;width:min(100%,39rem);margin:1rem auto 0;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.7}.reveal-compare{--reveal-position:50%;aspect-ratio:16/9;cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;border:1px solid #f5f5f52e;border-radius:1rem;width:min(100%,70rem);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 2rem 8rem #00000073}.hover-reveal-card:focus-visible,.reveal-compare:focus-visible{outline-offset:4px;outline:3px solid #a7ff38}.reveal-compare__before,.reveal-compare__image{width:100%;height:100%;position:absolute;inset:0}.reveal-compare__image{object-fit:cover}.hover-footer{margin:clamp(2rem,4vw,3rem) var(--container-padding) var(--container-padding);color:var(--color-light);background:#0f0f1161;border:1px solid #f5f5f514;border-radius:clamp(1.25rem,3vw,2rem);padding:clamp(2rem,4vw,3rem) clamp(1.25rem,4vw,3.5rem) 0;position:relative;overflow:hidden}.hover-footer__content{z-index:2;grid-template-columns:1.35fr repeat(3,minmax(8rem,.7fr)) .95fr;gap:clamp(1.4rem,3vw,3rem);width:min(100%,80rem);margin:0 auto;display:grid;position:relative}.hover-footer__logo{background:#00000080;border:1px solid #3ca2fa47;border-radius:999px;place-items:center;width:2.7rem;height:2.7rem;margin-bottom:.8rem;display:inline-grid;overflow:hidden}.hover-footer__logo img{object-fit:contain;width:78%;height:78%;display:block}.hover-footer__brand h2{color:#fff;letter-spacing:0;margin:0;font-size:clamp(1.9rem,3vw,2.7rem);font-weight:850;line-height:1}.hover-footer__brand p{color:#f5f5f59e;max-width:19rem;margin:1rem 0 0;font-size:.95rem;line-height:1.55}.hover-footer__column h3{color:#fff;margin:0 0 .7rem;font-size:1rem;font-weight:850}.hover-footer__column ul{gap:.42rem;margin:0;padding:0;list-style:none;display:grid}.hover-footer__column a,.hover-footer__column span{color:#f5f5f594;font-size:.94rem;line-height:1.35;text-decoration:none;transition:color .18s}.hover-footer__column a{align-items:center;min-height:2rem;display:inline-flex}.hover-footer__column li span+a{color:#f5f5f5d6;margin-top:.18rem;font-weight:750;display:block}.hover-footer__socials{flex-wrap:wrap;align-items:center;gap:.45rem .85rem;padding-top:.15rem;display:flex}.hover-footer__socials a{color:#f5f5f5c7;min-height:2rem;font-weight:750}.hover-footer__column a:focus-visible,.hover-footer__column a:hover{color:#3ca2fa}.hover-footer__column a:focus-visible{outline-offset:4px;outline:2px solid #3ca2fab3}.hover-footer__wordmark{z-index:1;pointer-events:auto;width:min(100%,84rem);height:clamp(11rem,20vw,20rem);margin:clamp(-1rem,-2vw,-.25rem) auto clamp(-5.4rem,-8vw,-3rem);display:none;position:relative}.footer-hover-text{cursor:pointer;-webkit-user-select:none;user-select:none;display:block}.footer-hover-text__ghost,.footer-hover-text__line,.footer-hover-text__reveal{fill:#0000;letter-spacing:0;text-transform:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:4.6rem;font-weight:900}.footer-hover-text__ghost{stroke:#f5f5f5c7;stroke-width:.3px}.footer-hover-text__line{stroke:#3ca2fa99;stroke-width:.3px;stroke-dasharray:1000;transition:stroke-dashoffset 2.8s cubic-bezier(.76,0,.24,1)}.footer-hover-text__reveal{stroke-width:.42px}.hover-footer__bottom{z-index:3;color:#f5f5f5d6;border-top:1px solid #f5f5f514;justify-content:space-between;align-items:center;gap:1rem;width:min(100%,80rem);margin:0 auto;padding:1rem 0;font-size:.9rem;display:flex;position:relative}.hover-footer__bottom p{margin:0;font-weight:700}.hover-footer__bottom-socials{align-items:center;gap:clamp(1rem,2.2vw,1.65rem);display:flex}.hover-footer__bottom-socials a{color:#f5f5f594;place-items:center;width:2.75rem;height:2.75rem;text-decoration:none;transition:color .18s;display:grid}.hover-footer__bottom-socials svg{fill:currentColor;width:1.15rem;height:1.15rem}.hover-footer__bottom-socials a:focus-visible,.hover-footer__bottom-socials a:hover{color:#3ca2fa}.hover-footer__bottom-socials a:focus-visible{outline-offset:4px;outline:2px solid #3ca2fab3}.hover-footer__gradient{z-index:0;pointer-events:none;background:radial-gradient(125% 125% at 50% 10%,#0f0f1166 50%,#3ca2fa33 100%);position:absolute;inset:0}
.hover-footer__contact-item{display:inline-flex;align-items:center;gap:.65rem;color:#f5f5f5d6;font-size:.94rem;font-weight:750;line-height:1.35;text-decoration:none;min-height:2rem;transition:color .18s}
.hover-footer__contact-item svg{flex-shrink:0;color:#3ca2fa;width:1.1rem;height:1.1rem}
.hover-footer__contact-item:hover,.hover-footer__contact-item:focus-visible{color:#3ca2fa}
.hover-footer__contact-item:focus-visible{outline-offset:4px;outline:2px solid #3ca2fab3}
.hover-footer__contact-item--static{color:#f5f5f594;font-weight:500;cursor:default}
.hover-footer__contact-item--static svg{color:#3ca2fa}
.hover-footer__wordmark{pointer-events:none}
.footer-hover-text{pointer-events:auto}
@media (min-width:1024px){.hover-footer__wordmark{display:flex}}@media (max-width:820px){.hover-footer__content{grid-template-columns:1fr 1fr}.hover-footer__brand{grid-column:1/-1}}@media (max-width:560px){.hover-footer{margin-inline:.75rem}.hover-footer__content{grid-template-columns:1fr}.hover-footer__bottom{flex-direction:column;align-items:flex-start}}.reveal-compare__before{clip-path:inset(0 calc(100% - var(--reveal-position)) 0 0)}.reveal-compare__divider{inset-block:0;left:var(--reveal-position);z-index:3;background:#fff;width:4px;position:absolute;translate:-50%;box-shadow:0 0 2rem #00000073}.reveal-compare__handle{background:#0a0a0a;border:3px solid #fff;border-radius:999px;grid-template-columns:repeat(2,1fr);place-items:center;width:3rem;height:3rem;transition:scale .18s;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.reveal-compare.is-dragging .reveal-compare__handle{scale:1.08}.reveal-compare__handle span{background:#a7ff38;border-radius:999px;width:3px;height:1.15rem}.reveal-compare__label{z-index:4;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000a8;border-radius:999px;padding:.45rem .75rem;font-size:.8rem;font-weight:800;position:absolute;top:1rem}.reveal-compare__label--before{left:1rem}.reveal-compare__label--after{right:1rem}.hover-reveal-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;width:min(100%,72rem);margin:0 auto;display:grid}.hover-reveal-card{isolation:isolate;background-image:var(--card-image);min-height:28rem;color:var(--color-light);background-position:50%;background-size:cover;border:1px solid #f5f5f524;border-radius:1rem;text-decoration:none;transition:transform .42s,filter .42s,opacity .42s,box-shadow .42s;display:block;position:relative;overflow:hidden}.hover-reveal-card:before{content:"";z-index:0;background:linear-gradient(#00000024,#000000d1);position:absolute;inset:0}.hover-reveal-cards:focus-within .hover-reveal-card,.hover-reveal-cards:hover .hover-reveal-card{opacity:.58;filter:blur(2px)saturate(.8);transform:scale(.97)}.hover-reveal-cards .hover-reveal-card:focus-visible,.hover-reveal-cards .hover-reveal-card:hover{z-index:2;opacity:1;filter:none;transform:scale(1.045);box-shadow:0 1.75rem 5rem #00000057}.hover-reveal-card__copy{z-index:1;inset-inline:0;padding:1.5rem;position:absolute;bottom:0}.hover-reveal-card__copy p{color:#f5f5f5c7;letter-spacing:.16em;text-transform:uppercase;margin:0 0 .4rem;font-size:.78rem;font-weight:800}.hover-reveal-card__copy h3{letter-spacing:0;margin:0;font-size:clamp(2rem,3vw,3.5rem);font-weight:800;line-height:.95}@media (max-width:1024px){.masonry-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(8.5rem,20vw,13rem)}}@media (max-width:720px){.masonry-grid{grid-auto-rows:clamp(8rem,34vw,12rem)}.hover-reveal-cards,.masonry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hover-reveal-cards.intro-featured-cards{grid-template-columns:1fr}.hover-reveal-card{min-height:22rem}}@media (max-width:480px){.masonry-grid{grid-template-columns:1fr;grid-auto-rows:16rem}.masonry-card:nth-child(n){grid-area:auto}.reveal-compare{aspect-ratio:4/5}.hover-reveal-cards{grid-template-columns:1fr}.hover-reveal-card{min-height:19rem}}@media (prefers-reduced-motion:reduce){.hover-reveal-card,.reveal-compare__handle,.split-text__unit{opacity:1;will-change:auto;transition:none}}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:2.85rem;padding:.78rem 1.15rem;font-size:.94rem;font-weight:850;line-height:1;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(60,162,250,.35)}.button--primary{color:#02070d;background:#3ca2fa}.button--primary:focus-visible,.button--primary:hover{background:#82c7ff}.button--secondary{color:#fff;background:#0000006b;border-color:#f5f5f547}.button--secondary:focus-visible,.button--secondary:hover{background:#f5f5f51a;border-color:#f5f5f59e}.section-eyebrow{color:#82c7ff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:900}.service-detail-page{min-height:100svh;color:var(--color-light);background:#000;overflow:hidden}.service-detail-hero{background-color:#090909;background-image:var(--service-hero-image);background-position:50%;background-size:cover;align-items:flex-end;min-height:88svh;display:flex;position:relative;overflow:hidden}.service-detail-hero__shade{background:linear-gradient(#00000061,#00000040 34%,#000000f0),linear-gradient(90deg,#000000ad,#0000 72%);position:absolute;inset:0}.service-detail-hero__inner{z-index:1;width:min(100%,80rem);padding:2rem var(--container-padding) 4.5rem;margin-inline:auto;position:relative}.service-detail-hero .portfolio-page__back{color:#ffffffdb;margin-bottom:1.25rem;position:static}.service-detail-hero__copy{width:min(100%,54rem)}.service-detail-hero__copy>p{color:#9bd2ff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.82rem;font-weight:900}.service-detail-hero__copy h1{color:#fff;letter-spacing:0;text-wrap:balance;margin:0;font-size:5.6rem;font-weight:900;line-height:.9}.service-detail-hero__copy>span{color:#ffffffdb;text-wrap:pretty;width:min(100%,45rem);margin-top:1.25rem;font-size:1.16rem;line-height:1.55;display:block}.intro-actions,.service-cta__actions,.service-detail-hero__actions{flex-wrap:wrap;gap:.75rem;display:flex}.service-detail-hero__actions{margin-top:1.75rem}.service-before-after,.service-cta,.service-detail-section{width:min(100% - (var(--container-padding) * 2),76rem);margin-inline:auto}.service-detail-section{padding-block:5.5rem}.service-detail-overview{grid-template-columns:minmax(0,1fr) minmax(18rem,.58fr);align-items:start;gap:4rem;display:grid}.home-process__heading h2,.service-cta h2,.service-detail-overview__copy h2,.service-section-heading h2{color:#fff;letter-spacing:0;text-wrap:balance;margin:0;font-size:3.35rem;font-weight:900;line-height:.96}.service-cta>div>p:last-child,.service-detail-overview__copy>p:last-child{color:#f5f5f5bd;width:min(100%,43rem);margin:1.25rem 0 0;font-size:1.08rem;line-height:1.65}.service-price{background:#06172e;border:1px solid #4aa3ff47;border-radius:.75rem;padding:1.6rem;display:grid}.service-price p{color:#9bd2ff;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.service-price strong{color:#fff;margin-top:.55rem;font-size:2.8rem;font-weight:900;line-height:1}.service-price span{color:#f5f5f5b8;margin-top:.9rem;line-height:1.55}.service-price a{color:#82c7ff;text-underline-offset:.25rem;align-items:center;min-height:44px;margin-top:1.25rem;font-weight:850;display:inline-flex}.service-detail-columns{border-block:1px solid #f5f5f51c;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;display:grid}.service-check-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.service-check-list li{color:#f5f5f5d1;border-bottom:1px solid #f5f5f517;padding:1rem 0 1rem 1.5rem;line-height:1.45;position:relative}.service-check-list li:before{content:"";border:2px solid #3ca2fa;border-radius:999px;width:.55rem;height:.55rem;position:absolute;top:1.45rem;left:0}.service-section-heading{width:min(100%,50rem);margin-bottom:2rem}.home-process ol,.service-process ol{margin:0;padding:0;list-style:none;display:grid}.service-process ol{border-block:1px solid #f5f5f51f;grid-template-columns:repeat(4,minmax(0,1fr))}.service-process li{border-right:1px solid #f5f5f51f;min-height:15rem;padding:1.4rem}.service-process li:last-child{border-right:0}.home-process li>span,.service-process li>span{color:#3ca2fa;font-size:.8rem;font-weight:900}.home-process h3,.service-process h3{color:#fff;margin:2.6rem 0 0;font-size:1.25rem;line-height:1.15}.home-process li p,.service-process li p{color:#f5f5f5ab;margin:.75rem 0 0;font-size:.95rem;line-height:1.55}.service-faq__items{border-top:1px solid #f5f5f524}.service-faq details{border-bottom:1px solid #f5f5f524}.service-faq summary{cursor:pointer;color:#fff;min-height:4.25rem;padding:1.35rem 3.25rem 1.35rem 0;font-size:1.08rem;font-weight:850;list-style:none;position:relative}.service-faq summary::-webkit-details-marker{display:none}.service-faq summary:after{content:"+";color:#82c7ff;font-size:1.5rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.service-faq details[open] summary:after{content:"−"}.service-faq details p{color:#f5f5f5b3;width:min(100%,48rem);margin:-.25rem 0 1.35rem;line-height:1.65}.service-faq summary:focus-visible{outline-offset:3px;outline:3px solid #4aa3ffb8}.service-cta{border-top:1px solid #f5f5f524;justify-content:space-between;align-items:flex-end;gap:2rem;padding-block:5rem;display:flex}.service-cta__actions{flex:none}.service-before-after,.service-brand-gallery{padding-block:5.5rem}.service-before-after .brand-content-compare,.service-before-after .reveal-stack__section{width:100%;padding:0}.home-process{border-block:1px solid #f5f5f51f;width:min(100%,76rem);margin:2rem auto;padding-block:4.5rem}.home-process__heading{width:min(100%,48rem)}.home-process ol{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2.5rem}.home-process li{border-right:1px solid #f5f5f51f;padding:0 2rem}.home-process li:first-child{padding-left:0}.home-process li:last-child{border-right:0}.home-process h3{margin-top:1.7rem}.home-process__link{color:#02070d;background:#3ca2fa;border:1px solid #3ca2fa80;border-radius:999px;justify-content:center;align-items:center;min-height:3rem;margin-top:2.5rem;padding:.82rem 1.15rem;font-weight:850;text-decoration:none;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;display:inline-flex;box-shadow:0 1rem 2.8rem #3ca2fa3d}.home-process__link:focus-visible,.home-process__link:hover{background:#82c7ff;border-color:#82c7ffd1;transform:translateY(-2px);box-shadow:0 1.2rem 3.4rem #3ca2fa57}.home-process__link:focus-visible{outline-offset:4px;outline:3px solid #4aa3ffb8}.intro-actions{justify-content:center;margin-top:1.6rem}.site-alert{color:#fff6dd;text-align:left;background:linear-gradient(135deg,#3a2205f5,#2a1804f0),#2b1904;border:1px solid #c27e1abd;border-radius:.5rem;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;width:min(100%,42rem);margin:clamp(1rem,2vw,1.35rem) auto 0;padding:.82rem .95rem;display:grid;box-shadow:0 1rem 3rem #00000042}.site-alert__icon{color:#ffe2a8;place-items:center;width:1.25rem;height:1.25rem;display:grid;transform:translateY(.08rem)}.site-alert__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:1.15rem;height:1.15rem;display:block}.site-alert--info{color:#e4f2ff;background:linear-gradient(135deg,#082750f5,#041731f0),#041731;border-color:#4aa3ffad}.site-alert--info .site-alert__copy strong,.site-alert--info .site-alert__icon{color:#b9ddff}.site-alert--info .site-alert__copy span{color:#e4f2ffe6}.site-alert--success{color:#e2fff1;background:linear-gradient(135deg,#083e2bf5,#04231af0),#04231a;border-color:#47d696a8}.site-alert--success .site-alert__copy strong,.site-alert--success .site-alert__icon{color:#a6f4ce}.site-alert--success .site-alert__copy span{color:#e2fff1e6}.site-alert__copy{gap:.18rem;display:grid}.site-alert__copy strong{color:#fff4d4;font-size:.95rem;font-weight:900;line-height:1.1}.site-alert__copy span{color:#fff6dde6;font-size:.92rem;font-weight:650;line-height:1.35}@media (max-width:900px){.service-detail-hero__copy h1{font-size:4.2rem}.service-detail-overview{grid-template-columns:1fr;gap:2.5rem}.service-process ol{grid-template-columns:repeat(2,minmax(0,1fr))}.service-process li:nth-child(2){border-right:0}.service-process li:nth-child(-n+2){border-bottom:1px solid #f5f5f51f}.service-cta{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.service-detail-hero{min-height:82svh}.service-detail-hero__inner{padding-bottom:3rem}.service-detail-hero__copy h1{font-size:3.25rem}.service-detail-hero__copy>span{font-size:1rem}.service-detail-section{padding-block:4rem}.home-process__heading h2,.service-cta h2,.service-detail-overview__copy h2,.service-section-heading h2{font-size:2.35rem}.home-process ol,.service-detail-columns,.service-process ol{grid-template-columns:1fr}.service-detail-columns{gap:2.5rem}.home-process li,.service-process li,.service-process li:nth-child(2){border-bottom:1px solid #f5f5f51f;border-right:0;min-height:auto;padding:1.4rem 0}.home-process li:last-child,.service-process li:last-child{border-bottom:0}.service-process h3{margin-top:1.5rem}.home-process{padding-block:3.5rem}.home-process ol{margin-top:1.5rem}.intro-actions .button,.service-cta__actions .button,.service-detail-hero__actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.button,.home-process__link{transition:none}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.portfolio-page__header>span{color:#f5f5f5b8;width:min(100%,42rem);margin-top:1.25rem;font-size:1.08rem;line-height:1.6;display:block}.portfolio-gallery__button{appearance:none;color:inherit;cursor:zoom-in;text-align:left;border:0;padding:0}.portfolio-gallery__button:focus-visible{outline-offset:4px;outline:3px solid #4aa3ff}.portfolio-gallery .masonry-card__overlay span{color:#fff;max-width:14rem;font-size:.95rem;font-weight:750;line-height:1.2}.portfolio-gallery-loading{width:min(100%,76rem);margin-inline:auto}
.portfolio-gallery__button img{opacity:0;transition:opacity .35s ease,transform .5s}
.portfolio-gallery__button img.is-loaded{opacity:1}
.portfolio-gallery__button img.is-broken{opacity:.35;object-fit:contain;background:#1a1a1a}
.masonry-card.portfolio-gallery__button{background:#111}
.portfolio-gallery-skeleton{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.portfolio-gallery-skeleton span{aspect-ratio:4/5;background:linear-gradient(100deg,#101010 30%,#191919 50%,#101010 70%) 0 0/250% 100%;border-radius:.75rem;animation:gallery-skeleton 1.5s linear infinite;display:block}@keyframes gallery-skeleton{to{background-position:-250% 0}}.portfolio-lightbox{z-index:120;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#000000f0;place-items:center;padding:4.5rem 4rem 3.5rem;display:grid;position:fixed;inset:0;overflow:hidden}.portfolio-lightbox__image{width:min(100%,90rem);height:min(82svh,60rem);max-width:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;cursor:zoom-in}.portfolio-lightbox__image.is-zoomed{cursor:grab}.portfolio-lightbox__image.is-zoomed.is-panning{cursor:grabbing}.portfolio-lightbox__image img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;display:block;transform-origin:center center;transition:transform .15s ease-out;user-select:none;-webkit-user-drag:none;pointer-events:none}.portfolio-lightbox button{z-index:2;color:#fff;cursor:pointer;min-width:2.75rem;min-height:2.75rem;font:inherit;background:#0a0a0ac7;border:1px solid #ffffff42;border-radius:999px;place-items:center;font-weight:800;display:inline-grid;position:absolute}.portfolio-lightbox button:focus-visible,.portfolio-lightbox button:hover{background:#0b2a4a;border-color:#82c7ff}.portfolio-lightbox button:focus-visible{outline-offset:3px;outline:3px solid #82c7ff}.portfolio-lightbox__close{padding-inline:1rem;top:1rem;right:1rem}.portfolio-lightbox__nav{width:3rem;height:3rem;line-height:1;top:50%;translate:0 -50%;font-size:2rem!important}.portfolio-lightbox__nav--previous{left:1rem}.portfolio-lightbox__nav--next{right:1rem}.portfolio-lightbox__count{color:#ffffffbd;margin:0;font-size:.9rem;font-weight:800;position:absolute;bottom:1rem;left:50%;translate:-50%}.contact-form__botcheck{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-form__label-text{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.contact-form__label-text small{color:#f5f5f57a;font-size:.74rem;font-weight:700}.contact-form__error--form{background:#ff505014;border-left:3px solid #ff8c8c;margin:0;padding:.8rem .9rem;line-height:1.45}.not-found-page{color:#fff;min-height:78svh;padding:4rem var(--container-padding);background:#000;place-items:center;display:grid}.not-found-page__inner{text-align:center;width:min(100%,56rem)}.not-found-page__inner>p{color:#82c7ff;letter-spacing:.14em;margin:0;font-size:.82rem;font-weight:900}.not-found-page h1{letter-spacing:0;text-wrap:balance;margin:1rem 0 0;font-size:5rem;font-weight:900;line-height:.94}.not-found-page__inner>span{color:#f5f5f5b8;width:min(100%,40rem);margin:1.25rem auto 0;font-size:1.05rem;line-height:1.6;display:block}.not-found-page__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.75rem;display:flex}@media (max-width:720px){.portfolio-gallery-skeleton{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-lightbox{padding-inline:.75rem}.portfolio-lightbox__nav--previous{left:.75rem}.portfolio-lightbox__nav--next{right:.75rem}.not-found-page h1{font-size:3.25rem}}@media (max-width:480px){.portfolio-gallery-skeleton{grid-template-columns:1fr}.not-found-page__actions .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}

/* Gallery grid centered on page */
.parallax__gallery-wrap{
  align-items:center;
  margin-inline:auto;
}
.masonry-grid,
.gallery-copy+.masonry-grid,
#galeria+.masonry-grid,
.portfolio-page__grid,
.portfolio-page__grid.masonry-grid,
.portfolio-gallery.masonry-grid{
  width:min(100%,76rem) !important;
  max-width:76rem;
  margin-left:auto !important;
  margin-right:auto !important;
  align-self:center;
}
.masonry-card img{
  object-fit:cover;
  object-position:center center;
}
.portfolio-gallery-center{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  box-sizing:border-box;
  padding-inline:var(--container-padding, 1.25rem);
}
.portfolio-gallery-center .masonry-grid{
  width:min(100%,76rem) !important;
  max-width:76rem !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* TextHoverEffect footer – clickable links + controlled wordmark */
.hover-footer{position:relative;overflow:hidden}
.hover-footer__content{
  position:relative;
  z-index:20;
  pointer-events:auto;
}
.hover-footer__bottom{
  position:relative;
  z-index:20;
  pointer-events:auto;
}
.hover-footer__content a,
.hover-footer__bottom a{
  position:relative;
  z-index:21;
  pointer-events:auto;
}
.hover-footer__wordmark{
  display:none;
  position:relative;
  z-index:1;
  width:min(100%,84rem);
  height:clamp(10rem,22vw,18rem);
  margin:clamp(-2rem,-3vw,-1rem) auto clamp(-4rem,-6vw,-2.5rem);
  pointer-events:none; /* never block links */
}
@media (min-width:1024px){
  .hover-footer__wordmark{display:flex;pointer-events:none}
  .hover-footer__wordmark .footer-hover-text{
    pointer-events:auto; /* hover works on empty areas only; links stay above */
  }
}
.footer-hover-text{
  width:100%;
  height:100%;
  cursor:default;
  user-select:none;
  display:block;
  touch-action:none;
}
.footer-hover-text__ghost{
  opacity:0;
  transition:opacity .15s ease;
}
.footer-hover-text.is-hovered .footer-hover-text__ghost{opacity:.7}
.hover-footer__gradient{
  z-index:0;
  pointer-events:none;
  position:absolute;
  inset:0;
  background:radial-gradient(125% 125% at 50% 10%, #0F0F1166 50%, #3ca2fa33 100%);
}


/* Contact page enhancements */
.contact-page__hours,.contact-page__note{display:flex;flex-direction:column;gap:.25rem;margin:0;color:inherit;text-decoration:none}
.contact-page__hours span,.contact-page__note span{color:#f5f5f57a;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.contact-page__hours,.contact-page__note{font-size:1rem;font-weight:600;line-height:1.4}
.contact-form__hint{display:block;color:#f5f5f57a;font-size:.78rem;font-weight:600;margin:.35rem 0 .5rem;line-height:1.4}
.contact-form__intro{color:#f5f5f5b8;font-size:.95rem;line-height:1.55;margin:0 0 1.25rem}
.contact-form__select-wrap select{width:100%;min-height:2.75rem;padding:.65rem 1rem;background:#0a0a0ac7;border:1px solid #ffffff42;border-radius:.75rem;color:#fff;font:inherit;appearance:none}
.contact-form__select-wrap select:focus{outline:2px solid #82c7ff;outline-offset:2px;border-color:#82c7ff}
.contact-form__select-wrap select option{background:#111;color:#fff}

/* Mobile hero: same layout as desktop, proportionally smaller */
@media (max-width:720px){
  .parallax__header{
    min-height:100svh;
    min-height:100dvh;
    padding:1.25rem var(--container-padding);
  }
  .parallax__visuals{
    height:100%;
  }
  .parallax__layers{
    height:100%;
  }
  .parallax__layer-title{
    height:100svh;
    height:100dvh;
  }
  .parallax__title{
    font-size:clamp(3.75rem,20vw,7rem);
    margin-right:0;
    letter-spacing:-0.02em;
  }
  .parallax__layer-img{
    object-fit:cover;
    object-position:center 50%;
    width:100%;
    height:100%;
  }
  .parallax__layer-img[data-parallax-layer="4"]{
    top:0 !important;
    bottom:auto !important;
    height:100% !important;
    width:100% !important;
    max-width:none;
    object-fit:cover;
    object-position:center bottom;
  }
  .parallax__fade{
    height:38%;
  }
  .parallax__hero-content{
    bottom:max(1.25rem,calc(env(safe-area-inset-bottom) + 0.5rem));
    width:min(calc(100% - (var(--container-padding) * 2)),80rem);
    grid-template-columns:1fr;
    gap:1rem;
    align-items:end;
    left:50%;
    transform:translate(-50%);
  }
  .parallax__hero-copy h2{
    max-width:100%;
    font-size:clamp(1.65rem,6.5vw,2.5rem);
    line-height:1.12;
  }
  .parallax__hero-copy>p:last-child{
    max-width:100%;
    margin-top:.55rem;
    font-size:.95rem;
    line-height:1.45;
    display:block !important;
  }
  .parallax__hero-eyebrow{
    margin-bottom:.5rem;
    font-size:.75rem;
  }
  .parallax__hero-actions{
    justify-content:flex-start;
    flex-wrap:wrap;
    gap:.6rem;
  }
  .parallax__hero-actions .button{
    flex:0 1 auto;
    min-width:0;
    width:auto;
  }
}

@media (max-width:420px) and (max-height:700px){
  .parallax__hero-copy>p:last-child{
    display:block !important;
    font-size:.88rem;
  }
  .parallax__title{
    font-size:clamp(3.25rem,18vw,5.5rem);
  }
  .parallax__hero-copy h2{
    font-size:clamp(1.45rem,6vw,2rem);
  }
}

/* Service detail hero – scaled, not broken */
@media (max-width:640px){
  .service-detail-hero{
    min-height:min(88svh,720px);
    min-height:min(88dvh,720px);
    align-items:flex-end;
    background-size:cover;
    background-position:center;
  }
  .service-detail-hero__inner{
    padding:1.5rem var(--container-padding) 2.75rem;
  }
  .service-detail-hero__copy{
    width:100%;
  }
  .service-detail-hero__copy h1{
    font-size:clamp(2.5rem,11vw,3.5rem);
    line-height:.95;
  }
  .service-detail-hero__copy>span{
    font-size:1rem;
    margin-top:1rem;
    width:100%;
  }
  .service-detail-hero__actions{
    margin-top:1.35rem;
  }
  .service-detail-hero__actions .button{
    width:auto;
    flex:0 1 auto;
  }
}

/* Shiny CTA button */
@property --gradient-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@property --gradient-angle-offset {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@property --gradient-percent {
  syntax: "<percentage>";
  initial-value: 5%;
  inherits: false;
}
@property --gradient-shine {
  syntax: "<color>";
  initial-value: white;
  inherits: false;
}
.shiny-cta {
  --shiny-cta-bg: #000000;
  --shiny-cta-bg-subtle: #1a1818;
  --shiny-cta-fg: #ffffff;
  --shiny-cta-highlight: #3ca2fa;
  --shiny-cta-highlight-subtle: #82c7ff;
  --animation: gradient-angle linear infinite;
  --duration: 3s;
  --shadow-size: 2px;
  --transition: 800ms cubic-bezier(0.25, 1, 0.5, 1);
  isolation: isolate;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  outline-offset: 4px;
  padding: 0.9rem 1.75rem;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 700;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--shiny-cta-fg);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background:
    linear-gradient(var(--shiny-cta-bg), var(--shiny-cta-bg)) padding-box,
    conic-gradient(
      from calc(var(--gradient-angle) - var(--gradient-angle-offset)),
      transparent,
      var(--shiny-cta-highlight) var(--gradient-percent),
      var(--gradient-shine) calc(var(--gradient-percent) * 2),
      var(--shiny-cta-highlight) calc(var(--gradient-percent) * 3),
      transparent calc(var(--gradient-percent) * 4)
    ) border-box;
  box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle);
  transition: var(--transition);
  transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine, transform;
}
.shiny-cta::before,
.shiny-cta::after,
.shiny-cta span::before {
  content: "";
  pointer-events: none;
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  z-index: -1;
}
.shiny-cta:active {
  translate: 0 1px;
}
.shiny-cta::before {
  --size: calc(100% - var(--shadow-size) * 3);
  --position: 2px;
  --space: calc(var(--position) * 2);
  width: var(--size);
  height: var(--size);
  background: radial-gradient(
    circle at var(--position) var(--position),
    white calc(var(--position) / 4),
    transparent 0
  ) padding-box;
  background-size: var(--space) var(--space);
  background-repeat: space;
  mask-image: conic-gradient(
    from calc(var(--gradient-angle) + 45deg),
    black,
    transparent 10% 90%,
    black
  );
  border-radius: inherit;
  opacity: 0.4;
  z-index: -1;
}
.shiny-cta::after {
  --animation: shimmer linear infinite;
  width: 100%;
  aspect-ratio: 1;
  background: linear-gradient(-50deg, transparent, var(--shiny-cta-highlight), transparent);
  mask-image: radial-gradient(circle at bottom, transparent 40%, black);
  opacity: 0.55;
}
.shiny-cta span {
  position: relative;
  z-index: 1;
}
.shiny-cta span::before {
  --size: calc(100% + 1rem);
  width: var(--size);
  height: var(--size);
  box-shadow: inset 0 -1ex 2rem 4px var(--shiny-cta-highlight);
  opacity: 0;
  transition: opacity var(--transition);
  animation: calc(var(--duration) * 1.5) breathe linear infinite;
}
.shiny-cta,
.shiny-cta::before,
.shiny-cta::after {
  animation: var(--animation) var(--duration),
    var(--animation) calc(var(--duration) / 0.4) reverse paused;
  animation-composition: add;
}
.shiny-cta:is(:hover, :focus-visible) {
  --gradient-percent: 20%;
  --gradient-angle-offset: 95deg;
  --gradient-shine: var(--shiny-cta-highlight-subtle);
}
.shiny-cta:is(:hover, :focus-visible),
.shiny-cta:is(:hover, :focus-visible)::before,
.shiny-cta:is(:hover, :focus-visible)::after {
  animation-play-state: running;
}
.shiny-cta:is(:hover, :focus-visible) span::before {
  opacity: 1;
}
.shiny-cta:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle), 0 0 0 2px rgba(60, 162, 250, 0.35);
}
@keyframes gradient-angle {
  to { --gradient-angle: 360deg; }
}
@keyframes shimmer {
  to { rotate: 360deg; }
}
@keyframes breathe {
  from, to { scale: 1; }
  50% { scale: 1.2; }
}
@media (prefers-reduced-motion: reduce) {
  .shiny-cta,
  .shiny-cta::before,
  .shiny-cta::after,
  .shiny-cta span::before {
    animation: none !important;
  }
}

.shiny-cta:focus {
  outline: none;
}
.shiny-cta:focus:not(:focus-visible) {
  box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle);
}
.button:focus {
  outline: none;
}

.vcard{width:min(100%,76rem);margin:0 auto;display:grid;grid-template-columns:minmax(15rem,22rem) minmax(0,1fr);align-items:stretch;background:#0c0c0c;border:1px solid #ffffff14;border-radius:1.4rem;overflow:hidden;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif)}
.vcard__photo{margin:0;background:#111;position:relative;min-height:100%;height:100%}
.vcard__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}
.vcard__body{padding:clamp(1.5rem,4vw,3rem);display:flex;flex-direction:column;gap:.85rem}
.vcard__brand{margin:0;color:#3ca2fa;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:900}
.vcard__body h2{margin:0;font-size:clamp(2.2rem,4vw,3.4rem);line-height:.9;letter-spacing:0;font-weight:900}
.vcard__role{margin:0;color:#f5f5f5d6;font-size:1.05rem}
.vcard__place{margin:0;color:#f5f5f5;font-weight:700}
.vcard__tags{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:.4rem 0 0;padding:0}
.vcard__tags li{border:1px solid #3ca2fa88;color:#82c7ff;border-radius:999px;padding:.35rem .75rem;font-size:.78rem;font-weight:800;letter-spacing:.04em}
.vcard__list{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.85rem}
.vcard__list a{color:#fff;text-decoration:none;display:flex;flex-direction:column;gap:.15rem}
.vcard__list a span,.vcard__list small{color:#f5f5f57a;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.vcard__list a:hover{color:#3ca2fa}
.vcard__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.1rem}
.vcard__btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 1.15rem;border-radius:999px;border:1px solid #ffffff2e;color:#fff;text-decoration:none;font-weight:800;font-family:inherit}
.vcard__btn:hover{border-color:#3ca2fa;color:#3ca2fa}
.vcard__btn--solid{background:#3ca2fa;color:#041018;border-color:#3ca2fa}
.vcard__btn--solid:hover{background:#82c7ff;color:#041018}
.contact-map{width:min(100%,76rem);margin:clamp(2.5rem,6vw,4.5rem) auto 0;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif)}
.contact-map__head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}
.contact-map__head p{margin:0 0 .35rem;color:#f5f5f58a;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;font-weight:800}
.contact-map__head h2{margin:0;font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:0;font-weight:900}
.contact-map__frame{width:min(100%,22rem);border:1px solid #ffffff14;border-radius:1.1rem;overflow:hidden;background:#111;aspect-ratio:1;min-height:0}
.contact-map__frame iframe{width:100%;height:100%;border:0;display:block}
.contact-map__open{margin:.8rem 0 0}
.contact-map__open a{color:#f5f5f5b8;font-weight:700}
.contact-map__open a:hover{color:#3ca2fa}
@media (max-width:800px){
  .vcard{grid-template-columns:1fr}
  .vcard__photo{max-width:none;aspect-ratio:3/4;height:auto;min-height:0}
  .contact-map__head{flex-direction:column;align-items:flex-start}
}

.service-detail-overview__copy > p:not(.section-eyebrow),
.service-detail-hero__copy > span,
.service-cta > div > p,
.service-process li p{
  margin-top:1.15rem;
  line-height:1.65;
}
.service-detail-overview__copy h2,
.service-section-heading h2,
.service-cta h2,
.service-detail-hero__copy h1{
  line-height:1.05;
}
.service-detail-columns{gap:2.75rem}
.service-process li{min-width:0}
.service-process li p,
.service-check-list li,
.service-detail-overview__copy p{
  overflow-wrap:anywhere;
}
.service-detail-hero__actions{
  position:relative;
  z-index:2;
}
@media (min-width:901px){
  .service-detail-overview .service-price{
    margin-top:calc(.78rem * 1.5 + .75rem);
  }
}
@media (max-width:700px){
  .service-detail-hero__actions{
    flex-direction:column;
    align-items:stretch;
    max-width:16.5rem;
  }
  .service-detail-hero__actions .shiny-cta,
  .service-detail-hero__actions .button{
    width:100%;
    justify-content:center;
  }
  .service-cta{
    flex-direction:column;
    align-items:flex-start;
  }
  .service-cta__actions{
    width:100%;
    max-width:16.5rem;
    flex-direction:column;
  }
  .service-cta__actions .shiny-cta,
  .service-cta__actions .button{
    width:100%;
    justify-content:center;
  }
}

html,body{scrollbar-width:none;-ms-overflow-style:none;overflow-x:hidden}
html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{display:none;width:0;height:0}
*{scrollbar-width:none}

.service-cta{width:min(100%,76rem);margin-inline:auto;padding-inline:1.25rem;box-sizing:border-box}
.portfolio-gallery__button{position:relative;overflow:hidden}
.portfolio-gallery__caption{position:absolute;z-index:2;left:.5rem;bottom:.5rem;max-width:calc(100% - 1rem);padding:.28rem .55rem;border-radius:.4rem;background:rgba(8,8,8,.78);color:#fff;font-size:.75rem;line-height:1.25;letter-spacing:.01em;text-align:left;pointer-events:none}
.portfolio-lightbox__count{max-width:min(42rem,92vw);text-align:center}

/* Hero copy sits under the wordmark, not as a second title. */
.parallax__hero-eyebrow{
  margin-bottom:.35rem;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.18em;
}
.parallax__hero-copy h2{
  max-width:28rem;
  font-size:clamp(1.15rem,1.55vw,1.55rem);
  font-weight:600;
  line-height:1.28;
  letter-spacing:-.015em;
}
.parallax__hero-copy>p:last-child{
  max-width:26rem;
  margin-top:.45rem;
  font-size:.92rem;
  line-height:1.45;
  font-weight:450;
}
@media (max-width:700px){
  .parallax__hero-copy h2{
    max-width:22rem;
    font-size:clamp(1.12rem,4.6vw,1.4rem);
    line-height:1.25;
  }
  .parallax__hero-copy>p:last-child{
    max-width:22rem;
    font-size:.86rem;
  }
}

/* No blue pulsing block inside the quote button. */
.shiny-cta::after,
.shiny-cta span::before{
  content:none;
  animation:none;
  opacity:0;
}
.shiny-cta:is(:hover, :focus-visible) span::before{
  opacity:0;
}

.site-nav{
  position:fixed;
  z-index:80;
  top:0;
  left:0;
  right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.65rem 1.15rem;
  background:linear-gradient(#000c, #0000);
  pointer-events:none;
}
.site-nav a,
.site-nav button{
  pointer-events:auto;
}
.site-nav a{
  color:#fff;
  text-decoration:none;
  font-weight:650;
  letter-spacing:.01em;
}
.site-nav__brand{
  font-size:.95rem;
  font-weight:800;
  letter-spacing:-.03em;
}
.site-nav__toggle{
  width:2.65rem;
  height:2.65rem;
  border:1px solid #ffffff24;
  border-radius:999px;
  background:#0000008c;
  color:#fff;
  cursor:pointer;
  display:grid;
  place-items:center;
  padding:0;
}
.site-nav__toggle-label{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
}
.site-nav__bars,
.site-nav__bars::before,
.site-nav__bars::after{
  display:block;
  width:1.05rem;
  height:2px;
  border-radius:2px;
  background:#fff;
  position:relative;
}
.site-nav__bars::before,
.site-nav__bars::after{
  content:"";
  position:absolute;
  left:0;
}
.site-nav__bars::before{top:-6px}
.site-nav__bars::after{top:6px}
.site-nav__toggle[aria-expanded="true"] .site-nav__bars{background:transparent}
.site-nav__toggle[aria-expanded="true"] .site-nav__bars::before{top:0;transform:rotate(45deg)}
.site-nav__toggle[aria-expanded="true"] .site-nav__bars::after{top:0;transform:rotate(-45deg)}
.site-nav__panel{
  position:absolute;
  top:100%;
  right:.85rem;
  min-width:15.5rem;
  display:flex;
  flex-direction:column;
  padding:.4rem;
  border:1px solid #ffffff1a;
  border-radius:1rem;
  background:#0b0b0bf5;
  box-shadow:0 1.1rem 2.4rem #000000b3;
}
.site-nav__panel[hidden]{display:none}
.site-nav__panel a{
  font-size:.98rem;
  padding:.72rem .9rem;
  border-radius:.7rem;
}
.site-nav a:hover,
.site-nav a:focus-visible{color:#9bd2ff}
.site-nav__panel a:hover,
.site-nav__panel a:focus-visible{background:#ffffff12}
.legal-page,
.portfolio-page,
.contact-page,
.not-found-page{
  padding-top:4.5rem;
}
.contact-form__status{
  min-height:1.25em;
  margin:0 0 .35rem;
  font-size:.92rem;
  line-height:1.4;
}
.contact-form__status.is-error{color:#ffb4b4}
.contact-form__status.is-ok{color:#b7f0c9}

.brand-dot{color:#3ca2fa}
.parallax__title .brand-dot,
.hover-footer .brand-dot{color:#3ca2fa}

.youtube-portfolio{
  width:min(100%,76rem);
  margin:0 auto 1rem;
}
.youtube-portfolio__card{
  display:flex;
  flex-direction:column;
  gap:.35rem;
  padding:1.4rem 1.5rem;
  border:1px solid #ffffff1a;
  border-radius:1rem;
  background:#0c0c0c;
  text-decoration:none;
}
.youtube-portfolio__card span{
  color:#ff4d4d;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.75rem;
  font-weight:800;
}
.youtube-portfolio__card strong{
  color:#fff;
  font-size:clamp(1.4rem,2vw,1.8rem);
  font-weight:750;
}
.youtube-portfolio__card em{
  color:#9bd2ff;
  font-style:normal;
  font-weight:650;
}
.youtube-portfolio__card:hover strong,
.youtube-portfolio__card:focus-visible strong{color:#9bd2ff}

html,body{
  -webkit-user-select:text;
  user-select:text;
}
.site-nav,
.hover-reveal-card,
.shiny-cta,
.button,
button,
.site-nav__toggle,
.footer-hover-text{
  -webkit-user-select:none;
  user-select:none;
}
.package-card,
.legal-page__content,
.service-detail-overview__copy,
.contact-page,
.contact-form__status{
  -webkit-user-select:text;
  user-select:text;
}
img{
  -webkit-user-drag:none;
}

.service-picker__native{
  position:absolute;
  width:1px;
  height:1px;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  opacity:0;
  pointer-events:none;
}
.service-picker{position:relative}
.contact-form .service-picker__button{
  position:relative;
  width:100%;
  min-height:2.75rem;
  justify-self:stretch;
  display:flex;
  align-items:center;
  padding:.85rem 2.4rem .85rem .9rem;
  border:1px solid #ffffff24;
  border-radius:.7rem;
  background:#00000047;
  color:#fff;
  font:inherit;
  font-weight:650;
  text-align:left;
  cursor:pointer;
}
.contact-form .service-picker__button::after{
  content:"";
  position:absolute;
  right:1rem;
  width:.55rem;
  height:.55rem;
  border-right:2px solid #aed1ff;
  border-bottom:2px solid #aed1ff;
  transform:translateY(-30%) rotate(45deg);
}
.contact-form .service-picker__button[aria-expanded="true"]::after{
  transform:translateY(10%) rotate(225deg);
}
.contact-form .service-picker__button.is-placeholder span{color:#f5f5f57a}
.contact-form .service-picker__button:hover,
.contact-form .service-picker__button:focus-visible{
  background:#00000047;
  border-color:#58a6ff8a;
  color:#fff;
}
.service-picker__menu{
  position:absolute;
  z-index:20;
  top:calc(100% + .35rem);
  left:0;
  right:0;
  margin:0;
  padding:.35rem;
  list-style:none;
  background:#141418;
  border:1px solid #ffffff1f;
  border-radius:.85rem;
  box-shadow:0 1rem 2.2rem #000000b3;
}
.service-picker__menu[hidden]{display:none}
.contact-form .service-picker__menu button{
  width:100%;
  justify-self:stretch;
  display:block;
  padding:.72rem .8rem;
  border:0;
  border-radius:.6rem;
  background:transparent;
  color:#fff;
  font:inherit;
  font-weight:650;
  text-align:left;
  cursor:pointer;
}
.contact-form .service-picker__menu button:hover,
.contact-form .service-picker__menu button:focus-visible,
.contact-form .service-picker__menu button.is-selected{
  background:#ffffff12;
  color:#9bd2ff;
}
.contact-form__select-wrap:after{content:none}

.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;align-items:stretch}
.package-card{background:#06172e;border:1px solid #4aa3ff47;border-radius:.75rem;padding:1.35rem 1.3rem 1.45rem;display:flex;flex-direction:column;gap:.8rem;min-width:0}
.package-card__label{color:#9bd2ff;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:900}
.package-card__price{color:#fff;font-size:2rem;font-weight:900;line-height:1}
.package-card__lead,.package-card__body{color:#f5f5f5d1;margin:0;font-size:.96rem;line-height:1.55}
.package-card .service-check-list{margin-top:-.2rem}
.package-card .service-check-list li{font-size:.94rem;padding:.72rem 0 .72rem 1.35rem}
.package-card .service-check-list li:before{top:1.15rem}
.package-note{color:#f5f5f5ab;max-width:48rem;margin:1.6rem 0 0;font-size:.98rem;line-height:1.6}
.package-note a{color:#82c7ff}
.service-packages + .service-packages{padding-top:0}
@media (max-width:980px){.package-grid{grid-template-columns:1fr}}

.send-success{
  position:fixed;
  inset:0;
  z-index:200;
  display:grid;
  place-items:center;
  padding:1.25rem;
  background:#000000a6;
}
.send-success[hidden]{display:none}
.send-success__card{
  width:min(100%,22rem);
  background:#071426;
  border:1px solid #4aa3ff47;
  border-radius:1.25rem;
  padding:2rem 1.4rem 1.45rem;
  text-align:center;
  opacity:0;
  transform:translateY(10px) scale(.96);
  transition:opacity .28s ease, transform .4s cubic-bezier(.2,.85,.2,1);
}
.send-success.is-open .send-success__card{opacity:1;transform:none}
.send-success__mark{
  width:96px;
  height:96px;
  margin:0 auto 1rem;
  position:relative;
  display:grid;
  place-items:center;
}
.send-success__ripple{
  position:absolute;
  width:72px;
  height:72px;
  border-radius:50%;
  border:2px solid #3ca2fa;
  opacity:0;
  animation:pay-ripple .7s ease .12s forwards;
}
.send-success__ball{
  width:72px;
  height:72px;
  border-radius:50%;
  background:#3ca2fa;
  display:grid;
  place-items:center;
  transform:scale(0);
  animation:pay-pop .55s cubic-bezier(.17,1.55,.35,1) .05s forwards;
  box-shadow:0 0 0 0 #3ca2fa55;
}
.send-success__check{
  width:38px;
  height:38px;
  fill:none;
  stroke:#fff;
  stroke-width:3.4;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:42;
  stroke-dashoffset:42;
  animation:pay-check .88s ease .42s forwards;
}
.send-success h2{
  color:#fff;
  margin:0 0 1.15rem;
  font-size:1.35rem;
  font-weight:900;
  line-height:1.2;
  letter-spacing:0;
}
.send-success button{
  min-height:44px;
  padding:.7rem 1.3rem;
  border:0;
  border-radius:999px;
  background:#3ca2fa;
  color:#041018;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
@keyframes pay-pop{
  0%{transform:scale(0)}
  62%{transform:scale(1.12)}
  100%{transform:scale(1)}
}
@keyframes pay-check{to{stroke-dashoffset:0}}
@keyframes pay-ripple{
  0%{transform:scale(.72);opacity:.75}
  100%{transform:scale(1.45);opacity:0}
}
@media (prefers-reduced-motion:reduce){
  .send-success__ball,.send-success__check,.send-success__ripple{animation:none}
  .send-success__ball{transform:none}
  .send-success__check{stroke-dashoffset:0}
  .send-success__ripple{display:none}
}

/* Balíky hneď pod popisom služby, nie po veľkej medzere. */
.service-detail-overview.service-detail-section{
  padding-bottom:1rem;
}
.service-detail-overview + .service-packages{
  padding-top:.35rem;
}
.packages-page{background:#000;color:var(--color-light);min-height:100svh}
.packages-page .portfolio-page__header{width:min(100% - (var(--container-padding) * 2),76rem)}
.packages-page .service-detail-section{padding-block:1.75rem 2.25rem}
.packages-page .service-packages + .service-packages{padding-top:.15rem}
