@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono)}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::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 utilities{.visible{visibility:visible}.static{position:static}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url("./media/oswald-cyrillic-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url("./media/oswald-cyrillic-wght-normal.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url("./media/oswald-vietnamese-wght-normal.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url("./media/oswald-latin-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url("./media/oswald-latin-wght-normal.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #ffffff;--tint: #f2f6fa;--ink: #1d1e20;--ink-soft: #565b62;--line: #dfe5ec;--blue: #0f8fdc;--blue-deep: #0a6cab;--blue-pale: #e3f2fc;--display: "Oswald Variable", "Arial Narrow", sans-serif;--body: "Inter Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--radius: 6px;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none}*,*:before,*:after{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto;display:block}p{line-height:1.7;margin:0 0 1em}ul{list-style:none;margin:0;padding:0}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:2px}.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}.skip-link:focus{left:8px;top:8px}h1,h2,h3,.eyebrow,.btn,.phone,.mobile-call,.nav nav a,.brand-text,.footer-brand{font-family:var(--display);text-transform:uppercase}h1{font-size:clamp(40px,5.6vw,76px);line-height:1.04;font-weight:600;letter-spacing:-.005em;margin:0 0 24px;text-wrap:balance}h2{font-size:clamp(30px,3.4vw,46px);line-height:1.1;font-weight:600;margin:0 0 18px;text-wrap:balance}h3{font-size:21px;line-height:1.2;font-weight:500;letter-spacing:.02em;margin:0 0 8px}h1 .eyebrow,.hero h1 em{display:block}h1 em,h2 em{font-style:normal;font-weight:300;color:var(--blue-deep)}.eyebrow{font-size:14px;font-weight:400;letter-spacing:.18em;color:var(--blue-deep);margin:0 0 16px}.lead{font-size:18px;color:var(--ink-soft);max-width:560px}.stroke{white-space:nowrap;padding-bottom:.08em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 20' preserveAspectRatio='none'%3E%3Cpath d='M3 13c40-7 92-9 150-8 52 1 100 3 144 1-30 5-70 6-112 7-60 2-124 2-182 6z' fill='%230f8fdc'/%3E%3C/svg%3E") no-repeat 0 100% / 100% .22em}.site-header{position:sticky;top:0;z-index:50;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:80px;display:flex;align-items:center;gap:32px;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;white-space:nowrap}.brand img{width:52px;height:52px}.brand-text strong,.brand-text small,.footer-brand strong,.footer-brand small{display:block}.brand-text strong{font-size:24px;font-weight:700;line-height:1;letter-spacing:.01em}.brand-text small{font-size:12.5px;font-weight:300;letter-spacing:.25em;color:var(--blue-deep);margin-top:4px}.nav nav{display:flex;align-items:center;gap:28px}.nav nav a{font-size:15px;letter-spacing:.08em;color:var(--ink-soft);padding:6px 0;border-bottom:2px solid transparent}.nav nav a:hover{color:var(--ink)}.nav nav a.active{color:var(--ink);border-bottom-color:var(--blue)}.phone{background:var(--ink);color:#fff;border-radius:var(--radius);padding:11px 18px;font-size:16px;font-weight:500;letter-spacing:.06em;transition:background .2s}.phone:hover{background:var(--blue-deep)}.menu-toggle{display:none;width:44px;height:44px;background:none;border:0;padding:0;place-items:center}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:24px;height:2px;background:var(--ink);transition:transform .2s,background .2s}.menu-toggle span{position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}.menu-toggle span:before{top:-7px}.menu-toggle span:after{top:7px}.menu-toggle span.open{background:transparent}.menu-toggle span.open:before{transform:translateY(7px) rotate(45deg)}.menu-toggle span.open:after{transform:translateY(-7px) rotate(-45deg)}.btn{display:inline-flex;align-items:center;justify-content:center;border:2px solid transparent;border-radius:var(--radius);padding:13px 26px;font-size:16px;font-weight:500;letter-spacing:.08em;transition:background .2s,color .2s,border-color .2s}.btn.primary{background:var(--blue-deep);color:#fff}.btn.primary:hover{background:var(--ink)}.btn.primary:disabled{background:#a9b3bd;cursor:not-allowed}.btn.outline{border-color:var(--ink);color:var(--ink)}.btn.outline:hover{background:var(--ink);color:#fff}.btn.light{background:#fff;color:var(--ink)}.btn.light:hover{background:var(--ink);color:#fff}.text-link{font-weight:600;font-size:14px;color:var(--blue-deep);border-bottom:1px solid currentColor;padding-bottom:2px}.text-link:hover{color:var(--ink)}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}.hero{background:var(--tint);overflow:hidden}.hero-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center;padding-block:72px 88px}.hero-visual{position:relative;padding:0 0 44px 44px}.hero-visual:before{content:"";position:absolute;right:-70px;top:-50px;width:300px;height:300px;border:14px solid var(--blue);border-radius:50%;opacity:.16}.hero-main{position:relative;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius);box-shadow:0 24px 50px -20px #1d1e2055}.hero-side{position:absolute;left:0;bottom:0;width:34%;aspect-ratio:3 / 4;object-fit:cover;border-radius:var(--radius);border:6px solid var(--paper);box-shadow:0 16px 34px -14px #1d1e2066}.photo-label{position:absolute;right:16px;bottom:60px;margin:0;background:var(--blue-deep);color:#fff;font-family:var(--display);font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:14px;padding:8px 14px;border-radius:var(--radius)}.trust-strip{background:var(--ink);color:#fff}.trust-items{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-block:22px}.trust-items li{display:flex;gap:12px;align-items:baseline}.trust-items b{font-family:var(--display);font-weight:300;font-size:22px;color:#6cc0f2}.trust-items span{font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;font-size:15px}.section{padding-block:88px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:36px}.section-head h2{margin-bottom:0}.tinted{background:var(--tint)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .2s,box-shadow .2s}.service-card:hover{border-color:var(--blue);box-shadow:0 14px 30px -18px #0a6cab66}.service-card img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.service-card div{padding:24px 24px 26px;border-top:4px solid var(--blue)}.service-card p{color:var(--ink-soft);font-size:15px;margin:0}.gallery-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.gallery-preview .project-card img{aspect-ratio:4 / 5;object-fit:cover}.gallery-full{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:22px;margin-bottom:36px}.gallery-full .project-card{display:flex;flex-direction:column}.gallery-full .project-card img{aspect-ratio:4 / 3;object-fit:cover}.gallery-full .project-card.tall{grid-row:span 2}.gallery-full .project-card.tall img{aspect-ratio:auto;flex:1;min-height:0}.project-meta p{font-size:14px;color:var(--ink-soft);margin:8px 0 0;line-height:1.55}.project-card{display:block;margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.project-card img{width:100%}a.project-card:hover{border-color:var(--blue)}.project-meta{position:relative;padding:16px 18px 18px}.project-meta small{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-deep);margin-bottom:4px}.project-meta h2,.project-meta h3{font-size:19px;font-weight:500;letter-spacing:.02em;line-height:1.2;margin:0;padding-right:54px}.swatches{position:absolute;right:16px;top:-15px;display:flex}.swatches i{width:30px;height:30px;border-radius:50%;border:3px solid var(--paper);box-shadow:0 2px 6px #1d1e2033}.swatches i+i{margin-left:-10px}.review-section{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:start}.review-section>div:first-child p{color:var(--ink-soft);margin-bottom:26px}.reviews{display:grid;gap:16px}.review{margin:0;background:var(--tint);border-left:4px solid var(--blue);border-radius:0 var(--radius) var(--radius) 0;padding:22px 24px}.review p{font-size:16px;margin:10px 0 14px}.review footer{background:none;padding:0;color:inherit;display:flex;gap:10px;align-items:baseline}.review strong{font-size:14px}.review small{font-size:12px;color:var(--ink-soft)}.stars{color:#c98a14;letter-spacing:.12em}.zone{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.zone p{color:var(--ink-soft)}.communes{display:flex;flex-wrap:wrap;gap:8px}.communes li{font-size:14px;font-weight:500;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:6px 14px}.communes li:first-child{background:var(--blue-deep);border-color:var(--blue-deep);color:#fff}.about-grid .communes{margin:4px 0 20px}.about-grid .communes li{background:var(--tint)}.about-grid .communes li:first-child{background:var(--blue-deep)}.faq{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin:24px 0 0}.faq>div{border-top:1px solid var(--line);padding:22px 0}.faq dt{font-family:var(--display);font-size:20px;font-weight:500;letter-spacing:.01em;margin-bottom:8px}.faq dd{margin:0;color:var(--ink-soft);line-height:1.7;font-size:15px}.prose{max-width:760px;margin:56px 0 30px}.prose p{color:var(--ink-soft)}.prose a{color:var(--blue-deep);text-decoration:underline}.service-list ul{margin-top:14px;display:grid;gap:6px}.service-list li{font-size:14px;padding-left:18px;position:relative}.service-list li:before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--blue)}.cta{background:var(--blue-deep);color:#fff;position:relative;overflow:hidden}.cta:after{content:"";position:absolute;right:-90px;bottom:-150px;width:340px;height:340px;border:16px solid #fff;border-radius:50%;opacity:.1}.cta-inner{position:relative;z-index:1;padding-block:60px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta .eyebrow{color:#cfe9fa}.cta h2{margin-bottom:8px}.cta p{margin:0;color:#e3f2fc}.page-intro{background:var(--tint);padding-block:72px 60px;border-bottom:1px solid var(--line)}.page-intro h1{max-width:900px;font-size:clamp(38px,4.8vw,64px)}.page-intro .lead{margin:0}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:40px}.service-list article{display:grid;grid-template-columns:42% 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.service-list img{width:100%;height:100%;min-height:220px;object-fit:cover}.service-list article>div{padding:26px}.service-list b{font-family:var(--display);font-weight:300;font-size:30px;color:var(--blue);line-height:1}.service-list h2{font-size:24px;font-weight:500;margin:10px 0}.service-list p{color:var(--ink-soft);font-size:15px;margin:0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.about-grid img{width:100%;border-radius:var(--radius);box-shadow:18px 18px 0 var(--blue-pale)}.about-grid p{color:var(--ink-soft)}.about-grid h3{margin-top:26px}.about-grid .btn{margin-top:12px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.contact-details h2{font-size:30px}.contact-details>p{color:var(--ink-soft)}.contact-details>a{display:block;padding:14px 0;border-top:1px solid var(--line);font-weight:600;font-size:17px;overflow-wrap:anywhere}.contact-details>a:hover{color:var(--blue-deep)}.contact-details>a small{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-deep)}.contact-details .source-note{border-top:1px solid var(--line);padding-top:16px}.source-note{font-size:13px;color:var(--ink-soft);margin:0}.contact-form{display:grid;gap:20px;background:var(--tint);padding:34px;border-radius:var(--radius);border-top:4px solid var(--blue)}.contact-form label{display:grid;gap:7px;font-size:14px;font-weight:600}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{width:100%;padding:12px 14px;border:1px solid #b9c3ce;background:#fff;border-radius:var(--radius);font-weight:400;color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:2px solid var(--blue);outline-offset:0;border-color:var(--blue)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form .checkbox{display:flex;align-items:flex-start;gap:12px;font-weight:400;line-height:1.5}.contact-form .checkbox input{margin-top:4px;width:18px;height:18px;accent-color:var(--blue-deep);flex:none}.contact-form .btn{justify-self:start}.form-feedback{color:#1c6b3c;font-weight:600;margin:0}.form-feedback.error{color:#b02a2a}.legal{max-width:800px}.legal h2{font-size:24px;font-weight:500;margin-top:32px}.legal h2:first-child{margin-top:0}.legal p{color:var(--ink-soft)}body>app-root>footer{background:var(--ink);color:#fff;padding:60px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-brand strong{font-size:30px;font-weight:700;line-height:1}.footer-brand small{font-size:14px;font-weight:300;letter-spacing:.25em;color:#6cc0f2;margin-top:6px}.footer-grid p{font-size:14px;max-width:340px;color:#b9bfc6;margin-top:18px}.footer-grid h2{font-size:16px;font-weight:500;letter-spacing:.1em;margin-bottom:6px}.footer-grid a,.footer-grid span{display:block;margin-top:10px;font-size:14px;color:#c9ced4;overflow-wrap:anywhere}.footer-grid a:hover{color:#fff;text-decoration:underline}.mobile-call{display:none}@media(max-width:980px){.desktop{display:none}.nav nav{gap:18px}.nav nav a{font-size:14px}.hero-layout{gap:32px}.gallery-preview,.gallery-full{grid-template-columns:repeat(2,1fr)}.service-list{grid-template-columns:1fr}.review-section{gap:36px}}@media(max-width:720px){.wrap{width:calc(100% - 32px)}.nav{height:68px}.brand img{width:44px;height:44px}.brand-text strong{font-size:21px}.menu-toggle{display:grid}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:8px 16px 16px;border-bottom:1px solid var(--line);box-shadow:0 16px 24px #1d1e201a;flex-direction:column;align-items:stretch;gap:0}.nav nav.open{display:flex}.nav nav a{font-size:17px;padding:14px 0;border-bottom:1px solid var(--line)}.nav nav a.active{border-bottom-color:var(--line);color:var(--blue-deep)}.hero-layout{grid-template-columns:1fr;padding-block:44px 56px}.hero-visual{padding:0 0 32px 24px}.hero-visual:before{display:none}.photo-label{bottom:44px;right:10px;font-size:12px}.trust-items{grid-template-columns:1fr 1fr;gap:14px 20px}.section{padding-block:56px}.section-head{align-items:start;flex-direction:column}.services-grid,.review-section,.about-grid,.contact-layout{grid-template-columns:1fr}.gallery-preview{gap:12px}.gallery-full{grid-template-columns:1fr}.gallery-full .project-card.tall{grid-row:auto}.gallery-full .project-card.tall img{aspect-ratio:3 / 4;flex:none}.zone,.faq{grid-template-columns:1fr}.project-meta{padding:14px}.project-meta h2,.project-meta h3{font-size:17px;padding-right:0}.service-list article{grid-template-columns:1fr}.service-list img{min-height:0;aspect-ratio:3 / 2}.about-grid{gap:36px}.about-grid img{box-shadow:10px 10px 0 var(--blue-pale)}.cta-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:30px}body>app-root>footer{padding-bottom:96px}.form-row{grid-template-columns:1fr}.contact-form{padding:22px}.page-intro{padding-block:44px 40px}.mobile-call{display:block;position:fixed;bottom:16px;right:16px;background:var(--blue-deep);color:#fff;padding:12px 22px;border-radius:var(--radius);z-index:40;box-shadow:0 6px 20px #1d1e2055;font-size:17px;font-weight:500;letter-spacing:.08em}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@property --tw-outline-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: block))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial}}}
