.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero h1 .hero-alla{letter-spacing:inherit}
.dialog-top{position:sticky;top:0;background:#fff;z-index:5}
@media(max-width:600px){.hero h1{margin-top:26px}.hero h1 br:first-of-type{display:none}.hero h1 .hero-alla{display:inline}.hero h1 .hero-alla:before{content:' '}.hero h1 .hero-result{display:block}.hero-selectors{padding-top:24px}}
input,select,textarea{font:inherit;border-radius:0}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--navy);outline-offset:4px}
.brand-intro{position:fixed;inset:0;z-index:150;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:29px;pointer-events:none;animation:intro-exit .35s ease .7s both}
.brand-intro>span{font-size:10px;color:var(--navy);letter-spacing:.19em;font-weight:600}.brand-intro-mark{position:relative;width:140px;height:140px;display:grid;place-items:center}.brand-intro-mark>img{width:49px;height:67px}.intro-ring{position:absolute;inset:0;fill:none;stroke-width:2}.ring-track{stroke:#edf0f1}.ring-stroke{stroke:var(--orange);stroke-dasharray:409;transform-origin:center;animation:ring-load .85s cubic-bezier(.25,.1,.25,1) both}
@keyframes ring-load{from{stroke-dashoffset:409;transform:rotate(-90deg)}to{stroke-dashoffset:0;transform:rotate(90deg)}}@keyframes intro-exit{to{opacity:0;visibility:hidden}}
.gallery-thumbs{flex-wrap:wrap}.gallery-thumbs button{flex:0 0 80px}.gallery-controls button{width:44px;height:44px}.dialog-close{min-height:44px}.filter{min-height:44px}.hero-select{min-height:50px}
.project-card:first-child .project-image{aspect-ratio:1.12}.project-card:first-child .project-image img{object-position:center 60%}.hero-visual>img{object-position:center 57%}.hero-caption{box-shadow:0 5px 30px rgb(5 25 40 / .04)}
.transformation{background:#f1efe9;padding-top:46px;padding-bottom:62px;position:relative}.transformation.is-interactive{min-height:160svh}.transformation-sticky{position:sticky;top:98px;padding-top:28px;padding-bottom:28px}.transformation-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:24px}.transformation-heading h2{font-size:clamp(34px,3.9vw,58px);letter-spacing:-.055em;line-height:1.1;margin-top:14px}.transformation-hint{font-size:11px;max-width:180px;text-align:right;color:var(--muted);line-height:1.6;padding-bottom:5px}.transformation-hint span{font-size:22px;margin-left:8px}
.comparison{--split:50%;position:relative;isolation:isolate;background:var(--navy);height:clamp(330px,52svh,650px);overflow:hidden}.comparison>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 52%}.comparison-after{clip-path:inset(0 0 0 var(--split))}.compare-label{position:absolute;top:23px;z-index:2;color:white;background:rgb(5 25 40 / .86);padding:11px 15px;font-size:13px;font-weight:600;pointer-events:none}.compare-label small{display:block;font-weight:400;font-size:9px;margin-top:4px;color:#e1e7eb}.compare-label-before{left:22px}.compare-label-after{right:22px}.compare-divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:white;z-index:3;pointer-events:none;filter:drop-shadow(0 1px 5px #0005)}.compare-divider>span{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);border:1px solid white;border-radius:50%;background:var(--orange);color:var(--navy);width:54px;height:54px;display:grid;place-items:center;font-size:26px}.comparison input{position:absolute;inset:0;z-index:4;margin:0;width:100%;height:100%;opacity:0;cursor:ew-resize;direction:rtl;touch-action:pan-y}.comparison:focus-within{outline:3px solid var(--orange);outline-offset:5px}.comparison-footer{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:17px}.comparison-footer strong{font-size:13px;font-weight:600}.comparison-footer p{font-size:10px;max-width:590px;color:var(--muted);margin-top:5px;line-height:1.6}.compare-actions{display:flex;flex:none;gap:5px}.compare-actions button{background:transparent;border:1px solid #bbc1c3;padding:0 16px;font-size:11px;min-height:44px;color:var(--navy)}.compare-actions button:hover,.compare-actions button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.comparison-nojs{font-size:12px;padding-top:16px}.comparison-nojs a{text-decoration:underline}
.contact-grid{grid-template-columns:.88fr 1.12fr;gap:70px;align-items:start;padding-block:90px}.contact h2{font-size:clamp(48px,4.6vw,70px);letter-spacing:-.06em}.contact-intro>p:not(.eyebrow){margin-top:30px;font-size:16px}.contact-intro .contact-email{display:inline-flex;gap:20px;font-size:14px;margin-top:32px;border-bottom:1px solid var(--navy);padding-bottom:12px}.contact-form{background:white;padding:35px;color:var(--navy);min-width:0}.form-heading{font-size:24px;font-weight:600;letter-spacing:-.04em}.form-required{font-size:10px;color:var(--muted);margin-top:8px;margin-bottom:27px}.contact-form fieldset{border:0;padding:0;margin:0;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{min-width:0;margin-bottom:24px}.field label{font-size:11px;font-weight:600;display:block;margin-bottom:10px}.field label span{font-size:9px;color:var(--muted);font-weight:400}.field input,.field select,.field textarea{border:0;border-bottom:1px solid #aab5bd;background:#fff;color:var(--ink);width:100%;padding:9px 0;font-size:16px;line-height:1.5;min-height:44px}.field input::placeholder,.field textarea::placeholder{color:#727d85;font-size:13px;opacity:1}.field textarea{resize:vertical;min-height:105px;max-height:350px}.field select{font-size:13px;padding-right:19px}.field [aria-invalid=true]{border-color:#a02a19}.field-error{font-size:11px;color:#a02a19;display:block;line-height:1.5;margin-top:6px}.field-error:empty{display:none}.message-meta{display:flex;justify-content:space-between;gap:20px}.message-meta .field-error{max-width:80%}#message-length{font-size:10px;color:var(--muted);margin-top:7px;margin-left:auto;white-space:nowrap}.form-privacy{font-size:10px;color:var(--muted);line-height:1.8;margin-top:0}.form-privacy a{text-decoration:underline;text-underline-offset:3px;color:var(--navy)}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-submit{margin-top:22px;display:flex;width:100%;justify-content:space-between;align-items:center;background:var(--navy);color:white;min-height:56px;padding:10px 12px 10px 20px;font-size:13px}.submit-icon{display:grid;place-items:center;background:var(--orange);color:var(--navy);width:34px;height:34px;font-size:25px}.form-submit:disabled{cursor:wait;opacity:.75}.contact-mode{font-size:10px;line-height:1.65;color:var(--muted);margin-top:13px}.form-status{margin-top:18px;padding:14px 16px;background:#eef2f4;font-size:12px;line-height:1.65;border-left:3px solid var(--navy)}.form-status.success{background:#ecf4ed;border-color:#246339}.form-status.error{background:#fcf1eb;border-color:#ab451d}.email-draft{display:inline-block;font-size:12px;border-bottom:1px solid currentColor;margin-top:15px;padding:12px 0}.footer-legal{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:21px;border-top:1px solid #49606d;font-size:11px;color:#d2dce1}.footer-legal>span{display:flex;align-items:center;gap:9px}.footer-legal i{width:5px;height:5px;border-radius:50%;background:var(--orange)}.footer-legal nav{display:flex;gap:26px}.footer-legal a{padding-block:14px}.footer-legal a:hover{text-decoration:underline}
.legal-header{position:static}.legal-header .text-link{font-size:12px;gap:18px}.legal-main{max-width:1200px;margin:auto;padding:75px var(--gutter) 90px}.legal-main h1{font-size:clamp(40px,5.6vw,74px);line-height:1.1;letter-spacing:-.055em;margin:22px 0}.legal-lead{font-size:18px;max-width:720px}.legal-meta{font-size:11px;color:var(--muted);margin-top:20px}.legal-layout{display:grid;grid-template-columns:210px 1fr;gap:65px;margin-top:60px}.legal-toc{position:sticky;top:30px;align-self:start;border-top:3px solid var(--orange);padding-top:20px;display:flex;flex-direction:column;gap:0}.legal-toc a{font-size:12px;padding-block:12px;color:var(--muted)}.legal-toc a:hover{color:var(--navy)}.legal-body{min-width:0}.legal-body section{padding-bottom:32px;margin-bottom:32px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.legal-body h2{font-size:24px;letter-spacing:-.035em;margin-bottom:16px}.legal-body p,.legal-body li{font-size:14px;line-height:1.85}.legal-body p+p{margin-top:13px}.legal-body a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-body ul{padding-left:20px}.legal-body li+li{margin-top:8px}.legal-callout{background:#eef3f6;border-left:3px solid var(--orange);padding:18px 22px;margin-top:24px;font-size:12px;line-height:1.8;max-width:780px}.privacy-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.privacy-facts>div{border-top:1px solid var(--line);padding-top:16px}.privacy-facts strong{display:block;font-size:13px;margin-bottom:5px}.privacy-facts span{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.contact-grid{gap:35px;grid-template-columns:.85fr 1.15fr}.contact-form{padding:27px}.contact-intro .contact-email{font-size:12px}.contact h2{font-size:48px}.form-row{gap:17px}.transformation-heading h2{font-size:40px}}
@media(max-width:820px){.transformation-sticky{top:82px}.transformation-heading{gap:20px}.transformation-hint{max-width:140px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-form{padding:30px}.contact h2{font-size:56px}.contact-intro>p:not(.eyebrow){margin-top:22px}.contact-intro .contact-email{font-size:14px;margin-top:22px}.legal-layout{grid-template-columns:1fr;gap:25px}.legal-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:0 24px}.legal-main{padding-top:45px}.legal-layout{margin-top:35px}}
@media(max-width:600px){.brand-intro-mark{width:120px;height:120px}.brand-intro>span{font-size:8px}.hero-visual{min-height:450px}.hero-visual>img{object-position:center 54%}.gallery-thumbs button{flex-basis:62px}.project-card:first-child .project-image{aspect-ratio:1.05}.transformation{padding-block:15px 35px}.transformation.is-interactive{min-height:140svh}.transformation-sticky{top:78px;padding-top:23px;padding-bottom:22px}.transformation-heading{display:block;margin-bottom:19px}.transformation-heading h2{font-size:35px;max-width:320px;margin-top:12px}.transformation-hint{text-align:left;max-width:none;font-size:10px;margin-top:11px;padding-bottom:0}.transformation-hint span{font-size:15px}.comparison{height:44svh;min-height:290px;max-height:480px}.comparison>img{object-position:44% center}.compare-label{top:12px;padding:8px 10px;font-size:11px}.compare-label small{font-size:8px}.compare-label-before{left:12px}.compare-label-after{right:12px}.compare-divider>span{width:44px;height:44px;font-size:22px}.comparison-footer{display:block;padding-top:14px}.comparison-footer strong{font-size:12px}.comparison-footer p{font-size:9px;line-height:1.6;max-width:340px}.compare-actions{margin-top:13px;gap:6px}.compare-actions button{flex:1;min-height:44px}.contact-grid{padding-block:55px;gap:32px}.contact h2{font-size:51px}.contact-intro>p:not(.eyebrow){font-size:14px}.contact-intro .contact-email{font-size:12px;gap:13px}.contact-form{padding:26px 20px}.form-heading{font-size:22px}.form-row{grid-template-columns:1fr;gap:0}.field{margin-bottom:21px}.field label{font-size:12px}.form-privacy{font-size:11px}.contact-mode{font-size:10px}.footer-legal{align-items:flex-start;flex-direction:column;gap:10px;padding-block:20px}.footer-legal nav{gap:23px}.legal-header .brand{width:160px}.legal-header .text-link{font-size:10px;gap:6px}.legal-header .text-link span{font-size:16px}.legal-main{padding-top:42px;padding-bottom:40px}.legal-lead{font-size:16px}.legal-main h1{font-size:45px}.legal-body h2{font-size:23px}.legal-body p,.legal-body li{font-size:14px}.legal-callout{padding:16px;font-size:11px}.privacy-facts{grid-template-columns:1fr}}
@media(max-height:740px){.transformation.is-interactive{min-height:0}.transformation-sticky{position:relative;top:auto}.comparison{height:60svh;min-height:280px}}
@media(max-width:600px){.gallery-frame{height:51svh;min-height:320px;max-height:470px}.gallery-thumbs{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:6px;scrollbar-width:thin}.gallery-thumbs button{flex:0 0 60px;height:46px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none!important}.transformation.is-interactive{min-height:0}.transformation-sticky{position:relative;top:auto}*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
