/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}@font-face{font-family:Nimbus Sans;src:url(/fonts/NimbusSans-Regular.otf)format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Nimbus Sans;src:url(/fonts/NimbusSans-Bold.otf)format("opentype");font-style:normal;font-weight:700;font-display:swap}:root{--navy:#071a33;--navy-2:#0d2947;--navy-3:#153754;--gold:#c9a15b;--gold-dark:#8d682f;--ivory:#f4f0e8;--stone:#d8d0c1;--ink:#18202a;--muted:#66717a;--white:#f8f6f1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Nimbus Sans,Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{width:min(1180px,100% - 48px);margin-inline:auto}.section{padding:120px 0}.site-header{z-index:50;height:78px;color:var(--white);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#071a33e6;border-bottom:1px solid #c9a15b47;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 42px;display:grid;position:fixed;top:0;left:0;right:0}.wordmark{letter-spacing:.12em;font-size:15px;font-weight:700}.site-header nav{align-items:center;gap:32px;display:flex}.site-header nav a{color:#f8f6f1c2;font-size:14px;transition:color .16s}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--gold)}.language-switch{color:#f8f6f173;justify-self:end;align-items:center;gap:8px;display:flex}.language-switch button{color:#f8f6f18c;cursor:pointer;letter-spacing:.08em;background:0 0;border:0;padding:8px 2px;font-size:13px;font-weight:700}.language-switch button.active{color:var(--gold)}.hero{background:var(--navy);min-height:900px;color:var(--white);align-items:center;display:flex;position:relative;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:radial-gradient(circle at 70% 38%,#c9a15b24,#0000 36%),url(/images/hero-castle.webp) 50% 36%/cover no-repeat;transform:scale(1.025)}.hero-shade{background:linear-gradient(90deg,#071a33fa 0%,#071a33e6 42%,#071a3359 78%,#071a33ad 100%),linear-gradient(#071a338a 0%,#0000 52%,#071a33f0 100%)}.hero-content{z-index:2;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;gap:90px;padding-top:102px;padding-bottom:150px;display:grid;position:relative}.hero-copy{max-width:680px}.badge{background:var(--gold);min-height:36px;color:var(--navy);letter-spacing:.08em;border-radius:7px;align-items:center;margin:0 0 30px;padding:7px 14px;font-size:12px;font-weight:700;display:inline-flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;font-size:13px;font-weight:700}.gold{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1{white-space:pre-line;letter-spacing:-.055em;max-width:760px;margin-bottom:28px;font-size:clamp(64px,7vw,104px);font-weight:700;line-height:.94}.hero-body{color:#f8f6f1c7;max-width:610px;margin-bottom:38px;font-size:21px;line-height:1.55}.hero-actions,.form-actions{flex-wrap:wrap;gap:14px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;min-height:54px;padding:13px 22px;font-size:15px;font-weight:700;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-gold{border-color:var(--gold);background:var(--gold);color:var(--navy)}.button-ghost{color:var(--white);background:#071a3326;border-color:#f8f6f159}.hero-logo-wrap{background:#071a33db;border:1px solid #c9a15b52;padding:16px;box-shadow:0 38px 90px #0000005c}.hero-logo-wrap img{width:100%;height:auto;display:block}.hero-proof{z-index:3;border-top:1px solid #c9a15b66;grid-template-columns:repeat(3,1fr);display:grid;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.hero-proof span{color:#f8f6f1ad;gap:15px;padding:22px 26px 0;font-size:14px;display:flex}.hero-proof span:first-child{padding-left:0}.hero-proof b{color:var(--gold)}.statement{background:var(--ivory)}.statement-grid{grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);align-items:start;gap:70px;display:grid}.statement-grid .eyebrow{color:var(--gold-dark)}.statement h2,.section-heading h2,.engineering-copy h2,.contact-copy h2{letter-spacing:-.045em;margin-bottom:28px;font-size:clamp(44px,5vw,76px);line-height:1.02}.statement-grid>div>p,.section-heading>p:last-child,.engineering-copy>p,.contact-copy>p{max-width:760px;color:var(--muted);font-size:20px}.gallery-section{background:var(--navy);color:var(--white)}.section-heading{max-width:800px;margin-bottom:58px}.section-heading>p:last-child{color:#f8f6f1a8}.section-heading>p.gallery-count:last-child{color:var(--gold);letter-spacing:.13em;text-transform:uppercase;margin-top:18px;font-size:12px;font-weight:700}.levels-section .section-heading>p:last-child{color:var(--muted)}.gallery-filters{flex-wrap:wrap;gap:10px;margin:-18px 0 36px;display:flex}.gallery-filters button{color:#f8f6f1bd;min-height:42px;font:inherit;cursor:pointer;background:#ffffff06;border:1px solid #c9a15b47;border-radius:999px;padding:10px 16px;font-size:13px;transition:color .18s,border-color .18s,background .18s}.gallery-filters button:hover,.gallery-filters button:focus-visible{color:var(--white);border-color:#c9a15bbf}.gallery-filters button.active{border-color:var(--gold);background:var(--gold);color:var(--navy);font-weight:700}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:22px;display:grid}.gallery-card{background:var(--navy-2);border:1px solid #c9a15b40;min-height:390px;position:relative;overflow:hidden}.gallery-card-feature{grid-column:span 2;min-height:470px}.gallery-card-portrait:not(.gallery-card-feature){min-height:520px}.gallery-card img{width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1);display:block}.gallery-card:hover img{transform:scale(1.035)}.gallery-overlay{background:linear-gradient(#071a3300,#071a33fa);padding:90px 34px 30px;position:absolute;inset:auto 0 0}.gallery-overlay .eyebrow{margin-bottom:8px}.gallery-overlay p:last-child{color:#f8f6f1cc;max-width:520px;margin:0}.process-section{background:var(--ivory)}.dark-heading>p:last-child{color:var(--muted)}.process-list{border-top:1px solid var(--stone);margin:0;padding:0;list-style:none}.process-list li{border-bottom:1px solid var(--stone);grid-template-columns:120px minmax(0,1fr);align-items:center;gap:30px;min-height:160px;display:grid}.process-number{background:var(--navy);width:72px;height:72px;color:var(--gold);border-radius:18px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.process-list h3{color:var(--navy);margin-bottom:8px;font-size:26px}.process-list p{max-width:740px;color:var(--muted);margin-bottom:0}.levels-section{background:#ece6da}.levels-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.levels-grid article{background:#f8f6f1d1;border:1px solid #d8c39d;border-radius:20px;flex-direction:column;min-height:390px;padding:26px;display:flex}.level-top{align-items:center;gap:16px;display:flex}.level-top>span{background:var(--navy);width:56px;height:56px;color:var(--gold);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.level-top h3{color:var(--navy);margin:0;font-size:20px}.level-top b{color:var(--gold-dark);font-size:14px}.levels-grid article>p{color:var(--muted);margin:44px 0 30px;font-size:16px}.levels-grid article>strong{border-top:1px solid var(--stone);color:var(--navy);margin-top:auto;padding-top:24px;font-size:21px}.engineering-section{background:var(--navy);color:var(--white)}.engineering-grid{grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);align-items:stretch;gap:80px;display:grid}.engineering-photo{border:1px solid #c9a15b4d;min-height:820px;overflow:hidden}.engineering-photo img{object-fit:cover;width:100%;height:100%;display:block}.engineering-copy{align-self:center}.engineering-copy>p{color:#f8f6f1a8}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:46px;display:grid}.feature-grid article{background:#0d2947b8;border:1px solid #c9a15b38;min-height:190px;padding:23px}.feature-grid span{color:var(--gold);font-size:13px;font-weight:700}.feature-grid h3{margin:24px 0 8px;font-size:19px}.feature-grid p{color:#f8f6f194;margin:0;font-size:15px}.contact-section{background:radial-gradient(circle at 10% 10%, #c9a15b14, transparent 34%), var(--ivory)}.contact-grid{grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);align-items:start;gap:80px;display:grid}.portfolio-download{border-left:4px solid var(--gold);background:#ffffff8a;margin-top:52px;padding:28px}.portfolio-download h3{color:var(--navy);margin-bottom:10px;font-size:22px}.portfolio-download p{color:var(--muted);font-size:16px}.portfolio-download a{color:var(--gold-dark);font-weight:700}.brief-form{background:#ffffffc2;border:1px solid #d8c39d;border-radius:24px;gap:20px;padding:36px;display:grid;box-shadow:0 30px 90px #2d2b2514}.form-type-selector{border:0;min-width:0;margin:0;padding:0}.form-type-selector legend{color:var(--navy);margin-bottom:8px;font-size:14px;font-weight:700}.form-type-options{background:#f1ede5;border:1px solid #d6cdbf;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;display:grid}.form-type-options button{min-height:48px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;padding:9px 14px;font-size:14px;font-weight:700;transition:background .16s,border-color .16s,color .16s,box-shadow .16s}.form-type-options button:hover,.form-type-options button:focus-visible{color:var(--navy)}.form-type-options button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.form-type-options button.active{color:var(--navy);background:#fffdf9;border-color:#c9a15b94;box-shadow:0 4px 14px #2d2b2514}.estimate-fields{gap:20px;display:grid}.estimate-intro,.estimate-disclaimer{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.estimate-disclaimer{border-left:3px solid var(--gold);background:#c9a15b17;padding:13px 15px}.brief-form label{gap:8px;display:grid}.brief-form label>span{color:var(--navy);font-size:14px;font-weight:700}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.brief-form input,.brief-form textarea,.brief-form select{width:100%;color:var(--ink);background:#fbfaf7;border:1px solid #d6cdbf;border-radius:10px;outline:none;transition:border-color .16s,box-shadow .16s}.brief-form input,.brief-form select{min-height:50px;padding:10px 13px}.brief-form textarea{resize:vertical;padding:13px}.brief-form input:focus,.brief-form textarea:focus,.brief-form select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c9a15b24}.brief-form input:invalid:not(:placeholder-shown),.brief-form textarea:invalid:not(:placeholder-shown){border-color:#9f3f3f}.brief-form .button:disabled{cursor:wait;opacity:.68;transform:none}.spam-trap{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.form-status{border-radius:10px;margin:0;padding:13px 15px;font-size:14px;line-height:1.5}.form-status-success{color:#24522c;background:#edf5ee;border:1px solid #9ab99e}.form-status-error{color:#7c2424;background:#fff0f0;border:1px solid #d2a0a0}.brief-form .button-ghost{color:var(--navy);background:0 0;border-color:#071a3333}.form-note{color:var(--muted);margin:0;font-size:13px}footer{color:#f8f6f19e;background:#041225;padding:70px 0 46px}.footer-grid{grid-template-columns:1fr auto;align-items:end;gap:34px 50px;display:grid}.footer-grid img{width:min(380px,100%);margin-bottom:14px;display:block}.footer-grid p{margin-bottom:0}.footer-tagline{color:var(--gold);letter-spacing:.06em;font-weight:700}.legal{border-top:1px solid #c9a15b38;grid-column:1/-1;max-width:960px;padding-top:28px;font-size:12px;line-height:1.6}@media (width<=1040px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{min-height:980px}.hero-content{grid-template-columns:1fr;gap:48px;padding-top:150px;padding-bottom:210px}.hero-logo-wrap{width:min(560px,100%)}.levels-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-card-feature{grid-column:span 1}.engineering-grid,.contact-grid{grid-template-columns:1fr}.engineering-photo{min-height:650px}}@media (width<=720px){body{font-size:16px}.shell{width:min(100% - 32px,1180px)}.section{padding:82px 0}.site-header{height:68px;padding:0 18px}.wordmark{font-size:12px}.hero{min-height:910px}.hero-content{padding-top:118px;padding-bottom:220px}h1{font-size:clamp(52px,17vw,76px)}.hero-body{font-size:18px}.hero-proof{grid-template-columns:1fr;bottom:22px}.hero-proof span{padding:10px 0 0}.statement-grid,.gallery-grid{grid-template-columns:1fr}.gallery-card,.gallery-card-feature,.gallery-card-portrait:not(.gallery-card-feature){grid-column:auto;min-height:440px}.gallery-filters{overscroll-behavior-inline:contain;flex-wrap:nowrap;margin-right:-16px;padding:0 16px 8px 0;overflow-x:auto}.gallery-filters button{flex:none}.process-list li{grid-template-columns:76px minmax(0,1fr);gap:16px;min-height:170px}.process-number{border-radius:14px;width:58px;height:58px}.process-list h3{font-size:21px}.levels-grid,.feature-grid,.field-row,.form-type-options{grid-template-columns:1fr}.levels-grid article{min-height:310px}.engineering-photo{min-height:560px}.contact-grid{gap:48px}.brief-form{padding:22px}.form-actions{flex-direction:column}.form-actions .button{width:100%}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
