:root{--bg:#15171b;--bg-soft:#20242a;--surface:#fff;--surface-soft:#f4f6f8;--text:#d8dde3;--text-dark:#20242a;--muted:#78828f;--muted-light:#aeb6c0;--line:#ffffff1f;--line-dark:#dce2e8;--copper:#c8383e;--copper-dark:#8f1e23;--cyan:#4fb7c5;--metal:#5c6670;--shadow:0 20px 60px #00000038;--container:1360px;--radius:8px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);scroll-padding-top:140px}body{background:var(--bg);margin:0}body,button,a{font:inherit}img,video{max-width:100%;display:block}a{color:inherit}p{margin:0;line-height:1.7}h1,h2,h3{color:inherit;margin:0;line-height:1.08}h1{max-width:850px;font-size:clamp(2.55rem,6vw,4.9rem)}h2{font-size:clamp(2rem,4vw,3.25rem)}h3{font-size:1.18rem}.container{width:min(100% - 40px, var(--container));margin:0 auto}.section{padding:96px 0}.section-light{color:var(--text-dark);background:var(--surface)}.section-heading{max-width:760px;margin-bottom:42px}.section-heading p:not(.eyebrow){color:var(--muted);margin-top:18px}.eyebrow{color:var(--copper);letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;font-size:clamp(1rem,1.1vw,1.12rem);font-weight:800}.button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 20px;font-weight:800;text-decoration:none;transition:transform .18s,border-color .18s,background .18s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button:focus-visible{outline-offset:3px;outline:3px solid #4fb7c573}.button-primary{color:#fff;background:linear-gradient(135deg, var(--copper), var(--copper-dark));box-shadow:0 14px 30px #c8383e40}.button-secondary{color:var(--text);border-color:var(--line);background:#ffffff0d}.section-light .button-secondary{color:var(--text-dark);border-color:var(--line-dark);background:#fff}.hero{background:linear-gradient(120deg,#c8383e2e,#0000 32%),linear-gradient(160deg,#4fb7c529,#0000 42%),#15171b;align-items:center;min-height:calc(100vh - 74px);display:grid;position:relative;overflow:hidden}.hero:before{content:"";opacity:.26;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 86%);mask-image:linear-gradient(#000,#0000 86%)}.hero-grid{grid-template-columns:minmax(0,1.04fr) minmax(320px,.86fr);align-items:center;gap:52px;display:grid;position:relative}.hero-lead{max-width:710px;color:var(--muted-light);margin-top:24px;font-size:1.18rem}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.hero-visual{border:1px solid var(--line);border-radius:var(--radius);min-height:520px;box-shadow:var(--shadow);background:radial-gradient(circle at 25% 20%,#c8383e38,#0000 32%),linear-gradient(145deg,#ffffff14,#ffffff05);position:relative;overflow:hidden}.model-grid{background-image:linear-gradient(#4fb7c538 1px,#0000 1px),linear-gradient(90deg,#4fb7c538 1px,#0000 1px);background-size:28px 28px;border:1px solid #ffffff2e;position:absolute;inset:48px 30px;transform:perspective(780px)rotateX(58deg)rotate(-28deg)}.model-card{z-index:2;border-radius:var(--radius);background:#15171bd6;border:1px solid #ffffff29;width:min(78%,310px);padding:24px;position:absolute;bottom:44px;right:38px}.model-card span,.model-card small{color:var(--muted-light);display:block}.model-card strong{color:#fff;margin:8px 0;font-size:4.3rem;line-height:.95;display:block}.model-node{background:linear-gradient(135deg,#c8383ec7,#8f1e2394);border:1px solid #ffffff38;width:78px;height:78px;position:absolute;transform:rotate(45deg)skew(-8deg,-8deg)}.node-one{top:96px;left:82px}.node-two{background:linear-gradient(135deg,#4fb7c5b8,#5c6670a3);top:172px;right:92px}.node-three{bottom:104px;left:154px}.model-axis{background:#4fb7c5b3;position:absolute}.axis-x{height:2px;top:238px;left:70px;right:82px;transform:rotate(-18deg)}.axis-y{width:2px;top:70px;bottom:80px;left:220px;transform:rotate(24deg)}.services-grid,.process-grid,.preview-grid,.library-resource-grid,.sectors-grid{gap:18px;display:grid}.services-grid{grid-template-columns:repeat(3,1fr)}.service-card,.preview-card,.sector-card,.revit-card,.process-grid div,.library-resource-grid article{border:1px solid var(--line-dark);border-radius:var(--radius);background:var(--surface-soft)}.service-card{min-height:280px;padding:0;overflow:hidden}.service-card img{aspect-ratio:16/9;object-fit:cover;background:var(--bg-soft);width:100%}.service-card-body{padding:26px}.hero-brand{width:min(100%,380px);height:auto;margin-bottom:28px;display:block}.service-heading,.project-title-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;display:grid}.service-heading h3{line-height:1.35}.service-card-wide{grid-column:span 2}.service-icon{width:44px;height:44px;color:var(--copper);border:1px solid #c8383e4d;border-radius:6px;justify-content:center;align-items:center;margin-bottom:0;font-weight:900;display:inline-flex}.service-card p,.revit-card p,.process-grid p,.sector-card p{color:var(--muted);margin-top:14px}.split-layout,.about-grid,.library-grid,.contact-box{grid-template-columns:.86fr 1.14fr;align-items:start;gap:54px;display:grid}.split-layout p:not(.eyebrow),.about-grid p,.library-grid p,.contact-box p{color:var(--muted-light);margin-top:18px}.experience-list{gap:14px;display:grid}.experience-list div{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff0d;padding:22px}.experience-list strong,.experience-list span{display:block}.experience-list span{color:var(--muted-light);margin-top:8px;line-height:1.55}.sectors-grid{grid-template-columns:repeat(2,1fr)}.preview-card,.library-resource-grid article{padding:26px}.library-resource-grid article h3{color:var(--text-dark)}.library-resource-grid article p{color:var(--muted);margin-top:14px}.sector-card{overflow:hidden}.sector-card img,.sector-card video{aspect-ratio:16/10;object-fit:cover;background:var(--bg-soft);width:100%}.sector-card div{padding:24px}.preview-card span,.library-resource-grid span,.revit-card span{color:var(--copper);letter-spacing:.1em;text-transform:uppercase;font-size:clamp(.95rem,1vw,1.05rem);font-weight:900}.preview-grid{grid-template-columns:repeat(3,1fr)}.preview-card .button{align-self:flex-start;margin-top:8px}.preview-card{flex-direction:column;gap:14px;display:flex}.preview-card>span{display:block}.preview-card h3{line-height:1.35}.preview-card p{color:var(--muted);flex:1;margin:0;line-height:1.75}.preview-card .button:hover,.preview-card .button:focus-visible{color:#fff;background:var(--copper);border-color:var(--copper)}.library-grid{align-items:center}.library-grid .button{margin-top:28px}.revit-card{padding:32px}.revit-card ul{color:var(--muted);margin:22px 0 0;padding-left:20px;line-height:1.75}.process-grid{grid-template-columns:repeat(3,1fr)}.process-grid div{border-color:var(--line);background:#ffffff0d;padding:24px}.process-grid span{color:var(--cyan);font-weight:900}.page-hero{background:linear-gradient(120deg,#c8383e33,#0000 34%),linear-gradient(160deg,#4fb7c526,#0000 45%),#15171b}.page-hero-grid{grid-template-columns:1fr 360px;align-items:end;gap:48px;display:grid}.page-summary{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff0f;padding:28px}.page-summary strong,.page-summary span{display:block}.page-summary strong{color:#fff;font-size:1.2rem}.page-summary span{color:var(--muted-light);margin-top:12px;line-height:1.6}.library-resource-grid{grid-template-columns:repeat(3,1fr)}.bim-library-status{border:1px solid var(--line-dark);border-radius:var(--radius);color:var(--muted);background:var(--surface-soft);padding:24px;font-weight:800}.bim-component-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.bim-component-card{color:var(--text-dark);border:1px solid var(--line-dark);border-radius:var(--radius);background:var(--surface-soft);overflow:hidden}.bim-component-media{aspect-ratio:16/10;background:var(--bg-soft);position:relative;overflow:hidden}.bim-component-media img,.bim-component-placeholder{width:100%;height:100%}.bim-component-media img{object-fit:cover}.bim-component-placeholder{background:linear-gradient(135deg,#c8383e38,#0000 44%),linear-gradient(160deg,#4fb7c533,#0000 54%),#20242a;place-items:center;display:grid;position:absolute;inset:0}.bim-component-placeholder:before{content:"";opacity:.26;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.bim-component-placeholder span{color:#fff;background:#15171bc2;border:1px solid #ffffff2e;border-radius:6px;justify-content:center;align-items:center;width:62px;height:62px;font-weight:900;display:inline-flex;position:relative}.bim-component-placeholder.is-hidden{display:none}.bim-component-body{gap:18px;padding:24px;display:grid}.bim-component-body p{color:var(--muted)}.bim-component-meta{gap:10px;margin:0;display:grid}.bim-component-meta div{border-bottom:1px solid var(--line-dark);justify-content:space-between;gap:16px;padding-bottom:10px;display:flex}.bim-component-meta dt{color:var(--muted);font-weight:800}.bim-component-meta dd{color:var(--text-dark);text-align:right;margin:0;font-weight:900}.bim-download-disabled{pointer-events:none}.auth-layout{grid-template-columns:minmax(0,.78fr) minmax(300px,.52fr);align-items:stretch;gap:26px;display:grid}.auth-form,.auth-panel,.portal-card{border:1px solid var(--line-dark);border-radius:var(--radius);background:var(--surface-soft)}.auth-form{gap:18px;padding:32px;display:grid}.auth-form[hidden]{display:none}.auth-form p:not(.eyebrow){color:var(--muted);margin-top:14px}.auth-form label{color:var(--text-dark);gap:8px;font-weight:900;display:grid}.auth-form input,.auth-form select,.profile-form input,.profile-form select,.profile-form textarea{border:1px solid var(--line-dark);width:100%;min-height:48px;color:var(--text-dark);background:#fff;border-radius:6px;padding:12px 14px}.auth-form input:focus,.auth-form select:focus,.profile-form input:focus,.profile-form select:focus,.profile-form textarea:focus{outline-offset:2px;outline:3px solid #4fb7c557}.profile-form textarea{resize:vertical;min-height:120px;font:inherit;font-weight:400;line-height:1.55}.auth-message{min-height:28px;color:var(--muted);font-weight:800}.auth-panel{color:#fff;background:linear-gradient(135deg,#c8383eb8,#0000 46%),linear-gradient(160deg,#4fb7c566,#0000 58%),#20242a;align-content:end;gap:16px;min-height:360px;padding:32px;display:grid}.auth-panel span,.portal-card span{color:var(--copper);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:900}.auth-panel span{color:#fff}.auth-panel p{color:var(--muted-light)}.portal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.portal-card{padding:26px}.portal-card p{color:var(--muted);margin-top:14px}.portal-profile-layout,.admin-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:26px;display:grid}.portal-profile-layout{grid-template-columns:minmax(0,1fr)}.account-removal{border-top:1px solid var(--line-dark);padding-top:26px}#delete-confirm{border:1px solid var(--line-dark);border-radius:var(--radius);width:min(540px,100% - 40px);color:var(--text-dark);background:#fff;padding:32px}#delete-confirm::backdrop{background:#000000a6}#delete-confirm h2{font-size:1.65rem}#delete-confirm p{line-height:1.7}.page-summary .session-role{color:#fff;letter-spacing:.06em;margin-top:8px}.admin-shortcuts{flex-wrap:wrap;gap:10px}.admin-shortcuts .button{padding:12px 18px}.admin-section[id]{scroll-margin-top:24px}.admin-layout{grid-template-columns:360px minmax(0,1fr)}.profile-form,.danger-panel,.admin-users-panel{border:1px solid var(--line-dark);border-radius:var(--radius);background:var(--surface-soft)}.profile-form{gap:22px;padding:30px;display:grid}.profile-form .section-heading{margin-bottom:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-form label,.profile-photo-row label{color:var(--text-dark);gap:8px;font-weight:900;display:grid}.profile-photo-row{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:16px;display:grid}.profile-photo-preview{border:1px solid var(--line-dark);border-radius:var(--radius);width:120px;height:120px;color:var(--muted);background:#fff;place-items:center;font-weight:900;display:grid;overflow:hidden}.profile-photo-preview img{object-fit:cover;width:100%;height:100%}.danger-panel{gap:16px;padding:24px;display:grid}.danger-panel p:not(.eyebrow),.delete-confirm p{color:var(--muted)}.delete-confirm{gap:10px;display:grid}.admin-users-panel{padding:24px}.admin-users-panel .section-heading{margin-bottom:20px}.admin-users-list{gap:10px;display:grid}.admin-user-row{border:1px solid var(--line-dark);width:100%;color:var(--text-dark);text-align:left;cursor:pointer;background:#fff;border-radius:6px;gap:6px;padding:14px;display:grid}.admin-user-row.is-active,.admin-user-row:hover{background:#c8383e12;border-color:#c8383e8c}.admin-user-row span{color:var(--muted);font-size:.9rem}#admin-projects-list .admin-user-row strong{font-weight:600}.admin-actions{flex-wrap:wrap;gap:12px;display:flex}.admin-section{gap:24px;display:grid}.section-admin-users{padding-top:0}.form-grid-full{grid-column:1/-1}.checkbox-field{align-items:center;grid-template-columns:none!important;gap:10px!important;display:flex!important}.checkbox-field input{width:18px;min-height:18px;accent-color:var(--copper)}.admin-current-files{border:1px solid var(--line-dark);color:var(--muted);background:#fff;border-radius:6px;gap:8px;padding:14px;font-weight:800;display:grid}.admin-current-files:empty{display:none}.admin-current-files a{color:var(--copper)}.admin-empty{border:1px dashed var(--line-dark);color:var(--muted);background:#fff;border-radius:6px;margin:0;padding:14px}.admin-gallery-admin{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-gallery-admin>.admin-gallery-count{color:var(--muted);grid-column:1/-1;margin:0;font-weight:800}.admin-gallery-admin:empty{display:none}.admin-gallery-admin figure{border:1px solid var(--line-dark);background:#fff;border-radius:6px;margin:0;overflow:hidden}.admin-gallery-admin img{aspect-ratio:4/3;object-fit:cover;width:100%}.admin-gallery-admin figcaption{color:var(--muted);gap:8px;padding:10px;font-size:.86rem;font-weight:800;display:grid}.admin-gallery-admin button{min-height:34px;color:var(--copper);cursor:pointer;background:#c8383e12;border:1px solid #c8383e59;border-radius:6px;font-weight:900}.projects-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:26px;display:grid}.projects-menu{border:1px solid var(--line-dark);border-radius:var(--radius);background:var(--surface-soft);padding:24px;position:sticky;top:156px}.projects-menu h2{font-size:1.55rem}.projects-menu nav{gap:8px;margin-top:20px;display:grid}.projects-menu a{border:1px solid var(--line-dark);color:var(--text-dark);background:#fff;border-radius:6px;padding:11px 12px;font-weight:600;line-height:1.25;text-decoration:none;transition:transform .18s,border-color .18s,background .18s}.projects-menu a:hover,.projects-menu a:focus-visible{background:#c8383e12;border-color:#c8383e73;transform:translateY(-1px)}.projects-list{gap:24px;display:grid}.project-detail{border:1px solid var(--line-dark);border-radius:var(--radius);background:var(--surface-soft);padding:28px;scroll-margin-top:24px}.project-detail-heading{margin-bottom:24px}.project-detail-featured{background:#fcf1f1;border-color:#c8383e4d}.project-number{width:48px;height:48px;color:var(--copper);border:1px solid #c8383e47;border-radius:6px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.project-detail-heading h2{font-size:clamp(1.6rem,2.4vw,2.35rem)}.project-detail-heading p{color:var(--muted);margin-top:12px}.project-featured{color:var(--copper);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:900;display:inline-block}.project-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.project-placeholder{margin:0}.project-image img,.project-image video{aspect-ratio:4/3;border:1px solid var(--line-dark);object-fit:cover;background:var(--bg-soft);border-radius:6px;width:100%}.project-image-open{cursor:zoom-in;background:0 0;border:0;border-radius:6px;width:100%;padding:0;display:block}.project-image-open:focus-visible{outline-offset:3px;outline:3px solid #4fb7c5a6}.project-lightbox{border-radius:var(--radius);color:#fff;width:min(1120px,100% - 32px);max-height:calc(100dvh - 32px);box-shadow:var(--shadow);background:#15171b;border:1px solid #ffffff29;padding:56px 20px 20px;overflow:auto}.project-lightbox::backdrop{background:#07090ce0}.project-lightbox img{object-fit:contain;width:100%;max-height:calc(100dvh - 180px);display:block}.project-lightbox p{color:var(--muted-light);text-align:center;margin-top:14px}.project-lightbox-close{color:#fff;background:var(--copper-dark);cursor:pointer;border:1px solid #ffffff2e;border-radius:50%;width:38px;height:38px;font-size:1.5rem;position:absolute;top:12px;right:12px}.page-hero-single{grid-template-columns:minmax(0,1fr)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body{transition:none;animation:none}}.project-placeholder div{aspect-ratio:4/3;border:1px solid var(--line-dark);background:linear-gradient(135deg,#c8383e2e,#0000 42%),linear-gradient(160deg,#4fb7c529,#0000 54%),#20242a;border-radius:6px;place-items:center;display:grid;position:relative;overflow:hidden}.project-placeholder div:before{content:"";opacity:.28;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.project-placeholder div span{color:#fff;background:#15171bb8;border:1px solid #ffffff2e;border-radius:6px;justify-content:center;align-items:center;width:44px;height:44px;font-weight:900;display:inline-flex;position:relative}.project-placeholder figcaption{color:var(--muted);margin-top:8px;font-size:.88rem;font-weight:800}.cta-band{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff0d;grid-template-columns:1fr auto;align-items:center;gap:32px;padding:34px;display:grid}.cta-band p:not(.eyebrow){color:var(--muted-light);margin-top:16px}.contact{background:linear-gradient(135deg, #c8383e38, #4fb7c51f), var(--bg-soft)}.contact-box{align-items:center}.contact-actions{flex-direction:column;gap:14px;display:flex}.social-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.social-actions a{text-align:center;border:1px solid var(--line);color:#fff;background:#ffffff0d;border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 16px;font-weight:800;line-height:1.2;text-decoration:none;transition:transform .18s,border-color .18s,background .18s;display:inline-flex}.social-actions a:hover,.social-actions a:focus-visible{background:#c8383e24;border-color:#c8383ea6;transform:translateY(-2px)}.social-actions svg{fill:currentColor;flex:none;width:22px;height:22px}.social-actions span{min-width:0}.site-footer{border-top:1px solid var(--line);background:#101215;padding:46px 0}.footer-grid{grid-template-columns:1fr auto;align-items:center;gap:36px;display:grid}.site-footer img{width:280px;max-width:100%;margin-bottom:18px}.site-footer p,.site-footer small{color:var(--muted-light)}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:14px 22px;display:flex}@media (width<=1320px){.hero-grid,.page-hero-grid,.split-layout,.about-grid,.library-grid,.auth-layout,.portal-profile-layout,.admin-layout,.projects-layout,.contact-box,.footer-grid,.cta-band{grid-template-columns:1fr}.hero{min-height:auto}.hero-visual{min-height:380px}.services-grid,.process-grid,.preview-grid,.sectors-grid,.portal-grid,.bim-component-grid,.library-resource-grid{grid-template-columns:repeat(2,1fr)}.projects-menu{position:static}.projects-menu nav{grid-template-columns:repeat(2,minmax(0,1fr))}.project-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-gallery-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-wide{grid-column:span 1}.footer-links{justify-content:flex-start}.cta-band .button{justify-self:start}}@media (width<=680px){.container{width:min(100% - 28px, var(--container))}.section{padding:72px 0}.hero-grid{gap:34px}.hero-actions,.contact-actions{align-items:stretch}.hero-actions .button,.contact-actions .button{width:100%}.social-actions,.services-grid,.process-grid,.preview-grid,.sectors-grid,.portal-grid,.bim-component-grid,.library-resource-grid,.projects-menu nav,.project-gallery,.admin-gallery-admin{grid-template-columns:1fr}.project-detail{padding:20px}.project-title-row{gap:12px}.project-number{width:40px;height:40px}.page-summary,.cta-band,.profile-form,.danger-panel,.admin-users-panel{padding:22px}.form-grid,.profile-photo-row{grid-template-columns:1fr}.hero-visual{min-height:320px}.model-card{padding:18px;bottom:22px;right:18px}.model-card strong{font-size:3.2rem}.model-grid{inset:38px 18px}}.footer-links a{color:var(--muted-light);font-size:.9rem;font-weight:700;text-decoration:none}.footer-links a:hover{color:#fff}.page-hero-image{place-self:center;width:100%;min-width:0;max-width:540px}.page-hero-image img{aspect-ratio:1;object-fit:contain;width:100%;height:auto}.hero-motion-stage{perspective:1000px;justify-self:center;width:100%;min-width:0;max-width:720px}.hero-visual.has-hero-images>:not(.hero-slides){visibility:hidden}.hero-slides{position:absolute;inset:0}.hero-slides img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity .9s ease-in-out;position:absolute;inset:0}.hero-slides img.is-active{opacity:1}.hero-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;min-height:44px;margin-top:12px;display:flex}.hero-controls button{color:#dce1e7;cursor:pointer;font:inherit;background:0 0;border:0}.hero-slide-dot{place-items:center;width:44px;height:44px;padding:0;display:grid}.hero-slide-dot:after{content:"";background:#818893;border-radius:50%;width:8px;height:8px;transition:background .25s}.hero-slide-dot[aria-pressed=true]:after{background:#e05056}.hero-slide-pause{min-height:44px;padding:8px 12px;font-size:.85rem!important}.hero-controls button:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px;border-radius:6px}.hero-controls [hidden],.hero-admin-preview [hidden]{display:none}.hero-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:24px;display:grid}.hero-image-form{min-width:0;padding:24px}.hero-image-form fieldset{border:0;min-width:0;margin:0;padding:0}.hero-image-form legend{margin-bottom:14px;font-size:1.15rem;font-weight:700}.hero-image-form label{gap:8px;margin-top:16px;display:grid}.hero-image-form input{width:100%;min-width:0}.hero-admin-preview{aspect-ratio:4/3;color:#c5cbd3;background:#20242b;border-radius:6px;place-items:center;display:grid;overflow:hidden}.hero-admin-preview img{object-fit:contain;width:100%;height:100%;max-height:280px}.hero-admin-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}@media (width<=900px){.hero-admin-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.hero-slides img,.hero-slide-dot:after{transition:none}}.hero-entry{animation:.8s cubic-bezier(.22,.61,.36,1) both hero-arrive}.hero-tilt{transition:transform .65s cubic-bezier(.22,.61,.36,1)}.hero-float{animation:8s ease-in-out .8s infinite hero-float}.hero-motion-stage .model-card{animation:7s ease-in-out infinite hero-depth}.hero-motion-stage .model-node{animation:9s ease-in-out infinite hero-node-depth}.hero-motion-stage .node-two{animation-delay:-3s}.hero-motion-stage .node-three{animation-delay:-6s}.motion-paused *,.motion-hidden *{animation-play-state:paused!important}@keyframes hero-arrive{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes hero-depth{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes hero-node-depth{0%,to{transform:translateY(0)rotate(45deg)skew(-8deg,-8deg)}50%{transform:translateY(-4px)rotate(45deg)skew(-8deg,-8deg)}}.process-timeline{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.process-timeline li{min-width:0;position:relative}.process-timeline li:not(:last-child):after{content:"";background:var(--line-dark);height:2px;position:absolute;top:29px;left:60px;right:-20px}.process-number{z-index:1;color:#fff;background:var(--copper-dark);border-radius:50%;place-items:center;width:60px;height:60px;margin-bottom:24px;font-size:1.45rem;font-weight:750;display:grid;position:relative}.process-timeline h3{margin-bottom:12px;font-size:1.08rem;line-height:1.35}.process-timeline p{color:var(--muted);font-size:.94rem}.calculator-settings-group{border:1px solid var(--line-dark);border-radius:var(--radius);min-width:0;margin:0 0 28px;padding:22px}.calculator-settings-group legend{padding:0 8px;font-weight:700}#calculator-settings-fields{border:0;min-width:0;margin:0;padding:0}#calculator-settings-fields>p{margin-bottom:20px}@media (width<=1000px) and (orientation:landscape){.process-timeline{grid-template-columns:repeat(6,minmax(180px,1fr));padding-bottom:18px;overflow-x:auto}}@media (width<=1000px) and (orientation:portrait){.process-timeline{grid-template-columns:1fr;gap:28px}.process-timeline li{min-height:85px;padding-left:80px}.process-number{margin:0;position:absolute;top:0;left:0}.process-timeline li:not(:last-child):after{width:2px;height:auto;inset:60px auto -28px 29px}}@media (prefers-reduced-motion:reduce){.hero-entry,.hero-float,.hero-motion-stage .model-card,.hero-motion-stage .model-node{animation:none}.hero-tilt{transition:none;transform:none!important}}.hero-actions .button-secondary:hover,.hero-actions .button-secondary:focus-visible,.contact-direct .button:hover,.contact-direct .button:focus-visible{color:#fff;background:#c8383e24;border-color:#c8383e}.quick-contact-cta:hover,.quick-contact-cta:focus-visible{color:#fff;background:#e0444b;border-color:#ef8589}.contact-preferred{background:#c8383e16;border:1px solid #c8383e80;border-radius:8px;padding:22px}.contact-preferred p{color:#d8dde3;margin:0 0 12px;font-size:1rem}.contact-preferred .button{width:100%;min-height:56px;font-size:1.1rem}.contact-direct{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.contact-direct svg{flex:none;width:24px;height:24px}@media (width<=400px){.contact-direct{grid-template-columns:1fr}}.content-carousel{min-width:0}.content-carousel [data-carousel]{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:calc(50% - 10px);grid-auto-flow:column;gap:20px;padding-bottom:12px;display:grid;overflow-x:auto}.content-carousel [data-carousel]::-webkit-scrollbar{display:none}.content-carousel [data-carousel]>*{scroll-snap-align:start;min-width:0}.content-carousel [data-carousel]>:only-child{grid-column:span 2}.carousel-controls{justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;display:flex}.carousel-controls[hidden]{display:none}.carousel-position{color:#626c78;font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:8px;font-size:.9rem}.carousel-hint{color:#626c78;margin-right:auto;font-size:.85rem;display:none}.carousel-arrow{color:#fff;cursor:pointer;background:#c8383e;border:1px solid #c8383e;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:inline-flex}.carousel-arrow svg{width:24px;height:24px}.carousel-arrow:hover:enabled{background:#8f1e23;border-color:#8f1e23}.carousel-arrow:disabled{color:#78828f;cursor:default;background:#e4e7eb;border-color:#dce2e8}.carousel-arrow:focus-visible,[data-carousel]:focus-visible{outline-offset:3px;outline:3px solid #c8383e}.projects-list,.project-detail{min-width:0}.content-carousel .project-image img,.content-carousel .project-image video{object-fit:contain;display:block}@media (width<=680px){.content-carousel [data-carousel]{grid-auto-columns:90%;gap:14px}.content-carousel [data-carousel]>:only-child{grid-column:auto;width:100%}.content-carousel [data-carousel]:has(>:only-child){grid-auto-columns:100%}.carousel-hint{display:inline}.carousel-controls{gap:8px}.carousel-position{margin-right:0;font-size:.8rem}.carousel-hint{font-size:.75rem}}.contact-inbox{color:#20242a;background:#fff}.contact-inbox-grid{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:28px;display:grid}.contact-inbox-toolbar,.contact-inbox-pages{flex-wrap:wrap;align-items:center;gap:14px;margin:18px 0;display:flex}.contact-inbox button{color:#20242a;cursor:pointer;font:inherit;background:#f4f6f8;border:1px solid #dce2e8;border-radius:6px;padding:12px 18px}.contact-inbox button:focus-visible{outline-offset:2px;outline:3px solid #c8383e}.contact-inbox button:disabled{opacity:.5;cursor:default}.contact-inbox .contact-request{text-align:left;gap:8px;width:100%;margin-bottom:12px;display:grid}.contact-inbox .contact-request.is-unread{border-left:5px solid #c8383e}.contact-inbox .contact-request[aria-pressed=true]{background:#fff0f0;border-color:#c8383e}.contact-inbox [data-inbox-detail]{overflow-wrap:anywhere;background:#f4f6f8;border-radius:8px;padding:24px}.contact-inbox .contact-status{color:#912129;margin:12px 0;font-weight:750}.contact-inbox dl{grid-template-columns:auto minmax(0,1fr);gap:10px 20px;display:grid}.contact-inbox dt{font-weight:700}.contact-inbox dd{margin:0}.contact-inbox h4{margin:24px 0 12px}.contact-inbox a{color:#912129}.contact-message{white-space:pre-wrap}.contact-reply{background:#fff;border-left:3px solid #c8383e;margin:18px 0;padding:18px}.contact-reply small{color:#59636e;margin:8px 0;display:block}.contact-inbox label{gap:10px;margin:24px 0 12px;font-weight:700;display:grid}.contact-inbox textarea{box-sizing:border-box;resize:vertical;width:100%;min-width:0;font:inherit;color:#20242a;background:#fff;border:1px solid #aeb6c0;border-radius:6px;padding:12px}.contact-inbox button[type=submit]{color:#fff;background:#a5262e}@media (width<=760px){.contact-inbox-grid{grid-template-columns:1fr}.contact-inbox [data-inbox-detail]{padding:18px}.contact-inbox dl{grid-template-columns:1fr;gap:4px}.contact-inbox dd{margin-bottom:12px}}.contact-quote{border:1px solid #dce2e8;border-radius:6px;margin:20px 0;padding:16px}.contact-quote summary{cursor:pointer;color:#912129;font-weight:700}.contact-quote p{margin-top:16px}
