:root{--ink:#14364e;--blue:#126a96;--navy:#102f45;--yellow:#f7cb50;--muted:#536776;--pale:#f2f6f8;--line:#dbe4ea;--white:#fff;--radius:6px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65;background:#fff;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2}h2{font-size:clamp(1.9rem,3vw,2.65rem);letter-spacing:-.035em;margin-bottom:24px}h3{letter-spacing:-.02em}address{font-style:normal}:focus-visible{outline:3px solid #0783c4;outline-offset:5px}.wrap{width:100%;max-width:1280px;margin-inline:auto;padding-inline:48px}.section{padding-block:100px}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.skip-link{position:fixed;top:-100px;left:16px;background:var(--navy);color:#fff;padding:12px 20px;z-index:100}.skip-link:focus{top:12px}[hidden]{display:none!important}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{max-width:1440px;min-height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:13px 48px;gap:32px}.brand{display:inline-flex;flex-shrink:0;align-items:center}.brand img{display:block;width:136px;height:auto}.desktop-nav{display:flex;align-items:center;gap:30px;font-size:15px;font-weight:600}.desktop-nav a{padding-block:12px;position:relative}.desktop-nav a:after{content:"";height:2px;position:absolute;left:0;right:0;bottom:6px;transform:scaleX(0);transform-origin:left;background:var(--blue);transition:transform .18s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.nav-calculator{display:inline-flex;gap:6px;align-items:center}.nav-calculator .icon{width:17px;height:17px}.header-actions{display:flex;gap:14px;align-items:center}.button{background:var(--yellow);color:var(--navy);padding:17px 24px;display:inline-flex;gap:26px;align-items:center;justify-content:center;font-weight:700;border:1px solid transparent;border-radius:var(--radius);line-height:1.35;cursor:pointer;transition:background .18s,transform .18s}.button:hover{background:#ffdc78;transform:translateY(-2px)}.button-small{padding:13px 19px;font-size:14px;gap:17px}.button-small .icon{width:18px;height:18px}.button-navy{background:var(--navy);color:white}.button-navy:hover{background:#1d4c6b}.text-link{font-size:15px;font-weight:700;display:inline-flex;align-items:center;gap:9px;line-height:1.5;border-bottom:1px solid currentColor;padding-block:3px;background:none;border-radius:0}.text-link .icon{width:19px;height:19px}.text-link:hover{color:var(--blue)}.menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);background:white;border-radius:4px}.mobile-nav{padding:10px 24px 24px;border-top:1px solid var(--line);display:grid;gap:4px;background:#fff}.mobile-nav a{padding:12px 0;font-size:1rem;font-weight:600}
.hero{display:grid;grid-template-columns:1.02fr 1fr;gap:55px;align-items:center;padding-block:62px 70px}.hero-copy{min-width:0}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:700;color:var(--blue);margin:0 0 22px;line-height:1.6}.eyebrow-line{display:inline-block;width:26px;height:2px;background:var(--blue);vertical-align:middle;margin-right:8px}.hero h1{font-size:clamp(2.4rem,4.6vw,4.15rem);line-height:1.1;letter-spacing:-.045em;font-weight:700;margin:0 0 28px}.hero h1>span{color:var(--blue);position:relative;display:inline-block}.hero h1>span:after{content:"";height:5px;position:absolute;background:var(--yellow);bottom:-8px;left:0;right:3px}.lead{font-size:1.125rem;line-height:1.8;color:var(--muted);margin:0 0 30px}.hero .lead{max-width:485px}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.actions .text-link{font-size:14px}.hero-trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:27px;font-size:13px;color:var(--muted)}.hero-trust span{display:flex;gap:6px;align-items:center}.hero-trust .icon{width:17px;height:17px;color:var(--blue)}.hero-visual{position:relative;min-width:0;min-height:550px;background:var(--pale);border-radius:var(--radius);overflow:hidden}.hero-visual>img{width:100%;height:550px;object-fit:cover;object-position:50% 50%;display:block}.hero-visual:after{content:"";position:absolute;inset:45% 0 0;pointer-events:none;background:linear-gradient(transparent,rgba(4,25,34,.36))}.image-tag{position:absolute;top:20px;left:20px;background:rgba(255,255,255,.94);padding:8px 12px;border-radius:3px;font-size:12px;letter-spacing:.015em;font-weight:600}.hero-photo-caption{position:absolute;left:20px;right:20px;bottom:20px;z-index:1;background:white;border-radius:4px;padding:18px;display:flex;align-items:center;gap:13px;box-shadow:0 3px 22px #0a243126}.photo-caption-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--yellow);border-radius:4px;flex-shrink:0}.hero-photo-caption>div{min-width:0;flex:1}.hero-photo-caption div>span{display:block;font-size:12px;letter-spacing:.05em;color:var(--muted);font-weight:700}.hero-photo-caption strong{display:block;font-size:15px;margin-top:3px}.hero-photo-caption>a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:var(--pale);border-radius:50%}
.expertise-strip{background:var(--navy);color:white}.expertise-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:96px}.expertise-inner>span:first-child{font-size:12px;letter-spacing:.08em;font-weight:700;color:#c3d7e3}.expertise-inner>p{margin:0;font-size:17px;font-weight:600}.strip-separator{height:24px;width:1px;background:#4a6577}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:55px;margin-bottom:44px}.section-heading h2{margin:0;max-width:790px}.section-heading>p,.section-heading-side{max-width:310px;flex-shrink:0;color:var(--muted);font-size:16px;margin-bottom:2px}.section-heading-side p{margin-bottom:17px}.section-heading-side .text-link{color:var(--ink)}.services-section .section-heading{align-items:flex-start}.services-section .section-heading>p{padding-top:37px;max-width:270px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 44px}.service{border-top:1px solid var(--line);padding-top:24px;display:flex;flex-direction:column}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:21px}.service-icon{color:var(--blue);display:inline-flex}.service-icon>.icon{width:31px;height:31px}.service-number{font-size:12px;color:#627786}.service h3{font-size:21px;margin-bottom:13px}.service p{font-size:16px;color:var(--muted);margin-bottom:23px}.service-benefit{font-size:14px;font-weight:600;margin-top:auto;color:var(--blue)}.projects-section{background:var(--pale)}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-card{border-radius:var(--radius);overflow:hidden;background:white}.project-link{display:block;height:100%}.project-photo{position:relative;overflow:hidden;aspect-ratio:1.42}.project-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.project-link:hover .project-photo img{transform:scale(1.035)}.power-label{position:absolute;left:15px;bottom:15px;padding:7px 12px;background:var(--navy);border:1px solid #ffffff38;border-radius:4px;color:#fff;font-size:21px;line-height:1.3;font-weight:600}.power-label small{font-size:12px;font-weight:400}.project-card-copy{padding:25px}.project-type{font-size:12px;text-transform:uppercase;letter-spacing:.085em;color:var(--blue);font-weight:700;margin:0 0 12px}.project-card h3{font-size:23px;line-height:1.25;margin-bottom:17px;max-width:260px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.tags span{display:inline-block;padding:4px 8px;border:1px solid var(--line);border-radius:3px;font-size:12px;color:var(--muted);line-height:1.5}.project-more{display:flex;align-items:center;justify-content:space-between;margin-top:25px;padding-top:15px;border-top:1px solid var(--line);font-size:14px;font-weight:600}.project-more .icon{width:18px;height:18px}.project-link:hover .project-more{color:var(--blue)}
.calculator-section{margin-block:95px;background:var(--yellow);border-radius:var(--radius);padding:54px 58px;display:grid;grid-template-columns:1.1fr 1fr;gap:70px;width:calc(100% - 96px);max-width:1184px}.calculator-copy>.eyebrow{color:var(--navy)}.calculator-copy>p:not(.eyebrow){max-width:490px;margin-bottom:26px}.calculator-copy h2{font-size:clamp(2rem,3vw,2.75rem)}.link-note{display:block;font-size:12px;line-height:1.6;margin-top:13px}.calculator-aside{align-self:center;border-left:1px solid #15364e30;padding-left:56px}.large-sun{display:inline-flex;margin-bottom:21px}.large-sun .icon{width:48px;height:48px;stroke-width:1.1}.calculator-aside>p{font-size:24px;line-height:1.4;font-weight:600;letter-spacing:-.02em}.calculator-aside ol{padding:0;list-style:none;margin:0;display:grid;gap:15px;font-size:14px}.calculator-aside li{display:flex;gap:14px;align-items:center}.calculator-aside li span{font-size:12px;font-weight:600;border:1px solid #14364e50;display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:50%}
.about-section{display:grid;grid-template-columns:.85fr 1.3fr;gap:95px;padding-top:5px;padding-bottom:90px;align-items:center}.portrait-panel{padding:36px 26px 28px;border-radius:var(--radius);background:var(--pale);text-align:center;position:relative;overflow:hidden}.portrait-panel:before{content:"";position:absolute;left:0;top:0;width:100%;height:6px;background:var(--blue)}.portrait-label{font-size:12px;color:var(--muted);font-weight:700;letter-spacing:.08em;display:block;margin-bottom:20px}.portrait-panel img{display:block;width:240px;height:240px;object-fit:contain;border-radius:50%;margin:0 auto 25px}.portrait-panel h3{font-size:24px;margin-bottom:5px}.portrait-panel p{font-size:14px;color:var(--muted);margin-bottom:21px}.portrait-location{font-size:13px;border-top:1px solid var(--line);padding-top:18px;display:flex;align-items:center;justify-content:center;gap:6px}.portrait-location .icon{width:16px;height:16px}.about-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:18px}.about-principles{display:grid;gap:15px;margin:25px 0 27px}.about-principles>div{display:flex;gap:13px;align-items:flex-start;font-size:14px;color:var(--muted)}.about-principles .icon{width:19px;height:19px;margin-top:3px;color:var(--blue)}.about-principles strong{color:var(--ink);font-size:15px;display:block;margin-bottom:2px}.partner-section{padding-block:32px 65px;display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid var(--line);max-width:1184px;width:calc(100% - 96px);padding-inline:0}.partner-section .eyebrow{margin-bottom:7px}.partner-section h2{font-size:27px;margin-bottom:0;white-space:nowrap}.partner-logos{display:flex;align-items:center;justify-content:flex-end;gap:50px;flex:1}.partner-logos a{display:flex;align-items:center;justify-content:center;min-width:0}.partner-logos img{max-width:180px;max-height:58px;object-fit:contain;display:block;width:auto;height:auto}.partner-logos a:nth-child(2) img{max-width:150px}
.contact-section{background:var(--navy);padding-block:88px;color:white}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;align-items:start}.contact-copy{padding-top:22px;min-width:0}.contact-copy>.eyebrow{color:var(--yellow)}.contact-copy h2{font-size:clamp(2.3rem,3.6vw,3.3rem);line-height:1.13;letter-spacing:-.04em;margin-bottom:26px}.contact-copy>p:not(.eyebrow){color:#c5d5df;max-width:390px}.contact-email{display:flex;gap:12px;align-items:center;font-size:21px;font-weight:500;letter-spacing:-.02em;margin-top:35px;word-break:break-word}.contact-email:hover{color:var(--yellow)}.contact-email .icon{color:var(--yellow)}.contact-address{display:flex;gap:13px;align-items:flex-start;margin-top:28px;color:#c5d5df;font-size:15px;line-height:1.8}.contact-address .icon{width:20px;height:20px;color:var(--yellow);margin-top:5px}.online-contact{margin-top:31px;font-size:14px;line-height:1.9}.online-contact a{border-bottom:1px solid #94adbd;color:#fff}.online-contact .icon{width:16px;height:16px}.inquiry-form{background:white;color:var(--ink);padding:33px 36px;border-radius:var(--radius);min-width:0}.inquiry-form h3{font-size:25px;margin:0 0 11px}.form-intro{font-size:14px;line-height:1.65;color:var(--muted);margin-bottom:23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;margin-bottom:17px;min-width:0}.field>label{font-size:14px;font-weight:600;margin-bottom:7px}.field>label>span{color:var(--blue)}input,select,textarea{border:1px solid #bdcdd8;border-radius:4px;padding:11px 12px;width:100%;min-width:0;background:#fff;color:var(--ink);font-size:16px;line-height:1.5}input::placeholder,textarea::placeholder{color:#71828e;font-size:14px}textarea{resize:vertical;min-height:112px}select{padding-right:30px}input:focus,select:focus,textarea:focus{border-color:var(--blue)}.form-privacy{font-size:12px;line-height:1.65;color:var(--muted);margin:0 0 19px}.form-privacy a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.button-form{width:100%;justify-content:space-between;padding-block:15px;font-size:15px}.form-status{margin-top:20px;padding:16px;border:1px solid #a8c7da;background:var(--pale);font-size:14px;border-radius:4px}.form-status p{margin-bottom:12px}.form-status p:empty{display:none}.form-status .text-link{border:0;border-bottom:1px solid var(--ink);padding:0 0 3px}.form-status textarea{height:200px;font-size:14px;margin-top:10px}
.site-footer{background:#f8fafb;padding-top:54px;color:var(--ink)}.footer-main{display:grid;grid-template-columns:1.3fr 1.1fr 1fr 1fr;gap:40px;padding-bottom:42px}.footer-brand img{width:145px;height:auto;display:block}.footer-brand p{font-size:13px;line-height:1.8;color:var(--muted);margin:14px 0 0}.footer-main h2{font-size:14px;font-weight:700;letter-spacing:0;line-height:1.5;margin:10px 0 15px}.footer-main address,.footer-main>div>a{font-size:14px;line-height:1.85;color:var(--muted)}.footer-main>div>a{display:block;margin-bottom:5px}.footer-main address a{display:inline-block;margin-top:9px}.footer-main a:hover{color:var(--blue)}.footer-bottom{border-top:1px solid var(--line);min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:var(--muted);font-size:12px}.footer-bottom>div{display:flex;gap:22px;flex-wrap:wrap}.footer-bottom a:hover{text-decoration:underline}
.page-intro{padding-block:57px 65px}.breadcrumb,.page-intro>.breadcrumb+span,.page-intro>.breadcrumb+span+span{font-size:13px;color:var(--muted)}.breadcrumb:hover{text-decoration:underline}.page-intro>.eyebrow{margin-top:44px;margin-bottom:17px}.page-intro h1,.legal-page h1{font-size:clamp(2.5rem,4.5vw,4rem);line-height:1.1;letter-spacing:-.045em;margin-bottom:27px}.page-intro .lead{max-width:650px}.project-detail-list{padding-bottom:80px}.project-detail{display:grid;grid-template-columns:1.08fr 1fr;gap:50px;border-top:1px solid var(--line);padding:48px 0;scroll-margin-top:112px;align-items:start}.detail-image{position:relative;border-radius:var(--radius);overflow:hidden}.detail-image img{display:block;width:100%;aspect-ratio:1.42;object-fit:cover}.detail-copy{padding:8px 0;min-width:0}.detail-copy h2{font-size:30px;line-height:1.2;margin:0 0 18px}.detail-copy>p:not(.project-type){color:var(--muted);font-size:16px;margin-bottom:18px}.detail-copy .tags{margin-block:20px}.detail-copy details{border-block:1px solid var(--line);margin:0 0 24px}.detail-copy summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;cursor:pointer;font-size:14px;font-weight:600;list-style:none}.detail-copy summary::-webkit-details-marker{display:none}.detail-copy summary>.icon{width:18px;height:18px}.detail-copy details[open] summary>.icon{transform:rotate(180deg)}.detail-copy dl{margin:0 0 15px}.detail-copy dl>div{display:grid;grid-template-columns:145px 1fr;gap:20px;padding:8px 0;font-size:14px;border-top:1px solid #eaf0f4}.detail-copy dt{color:var(--muted)}.detail-copy dd{margin:0}.project-bottom-cta{background:var(--yellow);padding-block:48px}.project-bottom-cta>.wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.project-bottom-cta h2{margin:0;font-size:30px}.project-bottom-cta .button{background:var(--navy);color:white}.legal-page{padding-top:56px;padding-bottom:100px;max-width:930px}.legal-page>.eyebrow{margin-top:38px}.legal-page h2{font-size:23px;margin:34px 0 16px}.legal-page p,.legal-page address{max-width:770px}.legal-page p a,.legal-page address a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.error-page{min-height:60vh}.error-page>.eyebrow{margin-top:0}
@media(max-width:1100px){.wrap{padding-inline:36px}.header-inner{padding-inline:36px;gap:22px}.desktop-nav{gap:20px}.desktop-nav .nav-calculator{display:none}.hero{gap:35px}.hero h1{font-size:clamp(2.3rem,4.6vw,3.55rem)}.hero-visual,.hero-visual>img{height:515px;min-height:515px}.hero-photo-caption{padding:14px;gap:10px}.hero-photo-caption strong{font-size:14px}.hero-photo-caption div>span{font-size:12px;letter-spacing:0}.hero-trust{gap:11px;font-size:12px}.hero .actions{gap:17px}.hero .button{padding:15px 20px}.services-section .section-heading{display:block}.services-section .section-heading>p{padding:18px 0 0;max-width:570px}.section-heading{gap:30px}.services-grid{gap:35px 28px}.projects-grid{gap:20px}.project-card-copy{padding:20px}.project-card h3{font-size:21px}.calculator-section{width:calc(100% - 72px);padding:44px;gap:40px}.calculator-aside{padding-left:35px}.about-section{gap:55px}.partner-section{width:calc(100% - 72px);padding-inline:0;gap:30px}.partner-logos{gap:30px}.partner-logos img{max-width:150px}.partner-logos a:nth-child(2) img{max-width:130px}.contact-grid{gap:50px}.inquiry-form{padding:29px}.form-row{grid-template-columns:1fr;gap:0}.footer-main{gap:25px}.project-detail{gap:35px}}
@media(max-width:850px){.wrap{padding-inline:26px}.section{padding-block:70px}.header-inner{min-height:85px;padding:12px 26px}.brand img{width:118px}.desktop-nav{display:none}.menu-toggle{display:flex}.hero{padding-block:45px 52px;gap:30px}.hero h1{font-size:clamp(2.05rem,4.6vw,2.55rem)}.hero .eyebrow{font-size:12px;letter-spacing:.045em}.hero .eyebrow-line{width:16px;margin-right:4px}.hero .lead{font-size:16px;line-height:1.7}.hero-visual,.hero-visual>img{height:455px;min-height:455px}.hero-photo-caption{left:12px;right:12px;bottom:12px;padding:12px;gap:9px}.photo-caption-icon{width:32px;height:32px}.photo-caption-icon .icon{width:20px;height:20px}.hero-photo-caption div>span{font-size:12px;letter-spacing:0}.hero-photo-caption strong{font-size:14px}.hero-photo-caption>a{display:none}.image-tag{font-size:12px;left:12px;top:12px;padding:6px 9px}.hero-trust{margin-top:21px}.hero-trust span:nth-child(2){display:none}.expertise-inner{gap:15px;min-height:80px;flex-wrap:wrap;justify-content:center;padding-block:20px}.expertise-inner>span:first-child{display:none}.expertise-inner>p{font-size:14px}.strip-separator{height:16px}.section-heading{align-items:start;gap:30px}.section-heading>p,.section-heading-side{max-width:240px;font-size:14px}.section-heading h2{font-size:30px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-card:last-child{grid-column:1/-1}.project-card:last-child .project-link{display:grid;grid-template-columns:1fr 1fr}.project-card:last-child .project-photo{aspect-ratio:auto}.project-card:last-child .project-card-copy{align-self:center}.calculator-section{width:calc(100% - 52px);padding:34px;gap:32px;margin-block:70px;grid-template-columns:1fr 1fr}.calculator-copy h2{font-size:30px}.calculator-aside{padding-left:30px}.calculator-aside>p{font-size:21px}.calculator-aside ol{font-size:14px}.about-section{grid-template-columns:.85fr 1.2fr;gap:35px;padding-top:0}.portrait-panel{padding:28px 20px}.portrait-panel img{width:200px;height:200px}.portrait-panel h3{font-size:22px}.about-copy h2{font-size:30px}.about-copy>p:not(.eyebrow){font-size:16px}.partner-section{width:calc(100% - 52px);padding-inline:0;display:block;padding-bottom:45px}.partner-section>div:first-child{margin-bottom:24px}.partner-logos{justify-content:space-between;gap:28px}.contact-grid{gap:35px;grid-template-columns:.9fr 1.1fr}.contact-section{padding-block:60px}.contact-email{font-size:18px}.contact-copy h2{font-size:38px}.inquiry-form{padding:25px}.inquiry-form h3{font-size:23px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.project-detail{gap:30px;grid-template-columns:1fr 1fr}.detail-copy h2{font-size:25px}.detail-copy .project-type{font-size:12px}.detail-copy>p:not(.project-type){font-size:16px}.detail-copy dl>div{grid-template-columns:1fr;gap:2px}.project-bottom-cta h2{font-size:26px}}
@media(max-width:620px){.wrap{padding-inline:22px}.section{padding-block:55px}.header-inner{padding:10px 20px;min-height:77px;gap:12px}.brand img{width:106px}.header-actions{gap:8px}.button-small{font-size:14px;padding:12px 13px;gap:0}.button-small .icon{display:none}.menu-toggle{width:38px;height:40px}.hero{grid-template-columns:1fr;gap:33px;padding-block:38px 36px}.hero h1{font-size:clamp(2.35rem,9.6vw,3.55rem);margin-bottom:26px}.hero .eyebrow{font-size:12px;letter-spacing:.06em;margin-bottom:19px}.hero .eyebrow-line{width:22px}.hero .lead{font-size:16px;max-width:460px;margin-bottom:24px}.hero .actions{gap:20px}.hero .button{font-size:15px;padding:15px 20px}.hero .actions .text-link{font-size:14px}.hero-trust{margin-top:20px;font-size:12px}.hero-trust span:nth-child(2){display:flex}.hero-visual,.hero-visual>img{min-height:335px;height:335px}.hero-visual>img{object-position:50% 48%}.hero-photo-caption{padding:14px;left:14px;right:14px;bottom:14px}.hero-photo-caption div>span{font-size:12px}.hero-photo-caption strong{font-size:14px}.hero-photo-caption>a{display:flex}.image-tag{font-size:12px;top:14px;left:14px}.expertise-inner{display:grid;grid-template-columns:1fr;gap:5px;text-align:center;padding-block:20px}.expertise-inner>p{font-size:14px;font-weight:500}.strip-separator{display:none}.section-heading{display:block;margin-bottom:31px}.section-heading h2{font-size:30px;line-height:1.19}.section-heading>p,.section-heading-side{max-width:100%;font-size:16px;margin-top:20px}.section-heading-side p{margin-bottom:15px}.eyebrow{font-size:12px;margin-bottom:16px}.services-section .section-heading>p{padding-top:0}.services-grid{grid-template-columns:1fr;gap:28px}.service h3{font-size:22px}.service h3{font-size:19px;line-height:1.25;overflow-wrap:anywhere}.service p{font-size:16px;line-height:1.65;margin-bottom:17px}.service-top{margin-bottom:19px}.service-benefit{font-size:14px;line-height:1.6}.service-number{font-size:12px}.projects-grid{grid-template-columns:1fr;gap:25px}.project-card:last-child .project-link{display:block}.project-card:last-child .project-photo{aspect-ratio:1.42}.project-photo{aspect-ratio:1.5}.project-card-copy{padding:25px}.project-card h3{max-width:100%;font-size:25px}.project-type{font-size:12px}.project-more{font-size:15px;margin-top:22px}.project-card .tags{margin-bottom:16px}.calculator-section{width:calc(100% - 44px);padding:30px 27px;margin-block:55px;display:block}.calculator-copy h2{font-size:32px}.calculator-copy>p:not(.eyebrow){font-size:16px}.calculator-aside{border-left:0;border-top:1px solid #14364e30;margin-top:30px;padding:27px 0 0}.large-sun{display:none}.calculator-aside>p{font-size:22px}.calculator-aside ol{font-size:14px}.about-section{grid-template-columns:1fr;gap:32px;padding-top:0;padding-bottom:45px}.portrait-panel{max-width:420px;width:100%;margin-inline:auto;order:2;padding:28px 23px}.portrait-panel img{width:220px;height:220px}.portrait-panel h3{font-size:24px}.about-copy h2{font-size:31px}.about-copy>p:not(.eyebrow){font-size:16px}.about-principles{gap:17px}.partner-section{width:calc(100% - 44px);padding-inline:0;padding-block:25px 38px}.partner-section h2{font-size:25px}.partner-logos{gap:19px;flex-wrap:wrap;justify-content:flex-start}.partner-logos img{max-width:135px;max-height:50px}.partner-logos a:nth-child(2) img{max-width:120px}.contact-section{padding-block:48px}.contact-grid{grid-template-columns:1fr;gap:33px}.contact-copy{padding-top:0}.contact-copy h2{font-size:39px}.contact-copy>.eyebrow{font-size:12px;letter-spacing:.05em}.contact-email{font-size:21px;margin-top:26px}.contact-address{margin-top:23px}.online-contact{margin-top:24px}.inquiry-form{padding:27px 23px}.form-intro{font-size:14px}.form-row{grid-template-columns:1fr;gap:0}.form-privacy{font-size:12px}.inquiry-form h3{font-size:25px}.site-footer{padding-top:35px}.footer-main{gap:23px 25px;padding-bottom:30px;grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-brand img{width:133px}.footer-main h2{font-size:14px}.footer-main address,.footer-main>div>a{font-size:14px;overflow-wrap:anywhere}.footer-bottom{display:block;padding-block:22px;line-height:1.8;font-size:12px}.footer-bottom>div{gap:20px;margin-top:11px}.page-intro{padding-block:32px 42px}.page-intro>.eyebrow{margin-top:29px}.page-intro h1,.legal-page h1{font-size:clamp(2.3rem,9vw,3rem)}.page-intro .lead{font-size:16px}.project-detail-list{padding-bottom:35px}.project-detail{display:block;padding:32px 0;scroll-margin-top:85px}.detail-image img{aspect-ratio:1.4}.detail-copy{padding-top:23px}.detail-copy h2{font-size:28px}.detail-copy>p:not(.project-type){font-size:16px}.detail-copy dl>div{grid-template-columns:115px 1fr;gap:16px}.detail-copy .tags{margin-block:18px}.project-bottom-cta{padding-block:34px}.project-bottom-cta>.wrap{display:block}.project-bottom-cta h2{font-size:30px;margin-bottom:24px}.legal-page{padding-top:32px;padding-bottom:55px}.legal-page h2{font-size:23px}}
@media(max-width:365px){.header-actions>.button{display:none}.hero .actions{align-items:flex-start;flex-direction:column;gap:15px}.services-grid{grid-template-columns:1fr}.service h3{font-size:22px}.hero-photo-caption>a{display:none}.hero-trust{display:grid;gap:8px}.detail-copy dl>div{grid-template-columns:1fr;gap:2px}.contact-email{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.menu-toggle,.actions,.inquiry-form,.calculator-section,.partner-section,.project-bottom-cta,.contact-section{display:none}.hero,.about-section,.project-detail{display:block}.hero-visual,.hero-visual>img{height:300px;min-height:0}.section{padding-block:30px}.projects-grid{grid-template-columns:repeat(3,1fr)}.project-card,.project-detail{break-inside:avoid}.wrap{padding-inline:0}.project-detail details>dl{display:block}.project-detail img{max-height:260px;object-fit:contain}body{font-size:11pt;color:#000}}
