@charset "UTF-8";
:root{--ink:#14272d;--navy:#102b36;--cream:#f7f5f0;--gold:#dfbd82;--gold-light:#efdab5;--muted:#626b6b;--line:#dedfd8;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--radius:5px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);font-family:var(--sans);font-size:15px;line-height:1.65;color:var(--ink);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.035em}h1{font-size:clamp(42px,4.7vw,73px)}h2{font-size:clamp(32px,3.1vw,46px)}h3{font-size:17px;line-height:1.3;font-weight:500;letter-spacing:-.02em}p{margin-top:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a97b33;outline-offset:5px}img{display:block;width:100%;height:auto}svg{flex:none}.wrap{width:min(1320px,calc(100% - 112px));margin:auto}.section{padding:65px 0}.eyebrow{display:block;text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.16em;line-height:1.6;color:#6e613f;margin-bottom:17px}.eyebrow.light{color:#faf2e4}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;min-height:49px;padding:12px 23px;border:1px solid transparent;border-radius:var(--radius);font-size:12px;line-height:1.5;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.button span{font-size:18px;font-weight:400}.button:hover{transform:translateY(-2px)}.button-gold{background:linear-gradient(115deg,var(--gold-light),var(--gold));color:#1e292c;box-shadow:0 3px 10px #0000000b}.button-gold:hover{background:#eed6ad}.button-outline{border-color:#c4c6bf99;color:white;background:#10232d1a}.button-outline:hover{background:#ffffff1c}.button-small{font-size:11px;min-height:40px;padding:9px 17px;gap:15px}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;font-weight:500;line-height:1.5;border-bottom:1px solid transparent;padding-bottom:3px}.text-link:hover{border-color:currentColor}.text-link span{font-size:21px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:1000;background:white;color:var(--ink);padding:10px 20px;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{position:absolute;top:0;width:100%;z-index:30;color:#fff}.header-inner{height:98px;display:flex;align-items:center;gap:60px}.wordmark{font-family:var(--serif);font-size:25px;letter-spacing:.24em;line-height:1;color:inherit;display:inline-flex;flex-direction:column;white-space:nowrap}.wordmark>span{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:10px;padding-right:6px;font-family:var(--sans);font-size:7px;letter-spacing:.5em;font-weight:400;color:var(--gold)}.wordmark i{height:1px;width:27px;background:currentColor;opacity:.65}#navigation{display:flex;align-items:center;justify-content:space-between;flex:1;gap:28px}.main-menu{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0;font-size:12px}.main-menu>li>a{display:flex;align-items:center;gap:8px;padding:15px 0}.main-menu a:hover{color:var(--gold-light)}.has-submenu,.menu-item-has-children{position:relative}.sub-menu{display:none;position:absolute;top:100%;left:-18px;min-width:215px;padding:10px;list-style:none;background:var(--navy);color:#fff;box-shadow:0 10px 25px #0002;border-radius:4px}.sub-menu a{display:block;padding:9px 12px}.has-submenu:hover>.sub-menu,.has-submenu:focus-within>.sub-menu,.menu-item-has-children:hover>.sub-menu,.menu-item-has-children:focus-within>.sub-menu{display:block}.nav-actions{display:flex;align-items:center;gap:22px}.current-language{font-size:10px;letter-spacing:.08em}.language-picker{position:relative;font-size:12px}.language-picker summary{cursor:pointer}.language-picker ul{position:absolute;list-style:none;padding:12px;background:var(--navy);min-width:120px;right:0}.menu-toggle{display:none}.inner-page .site-header{position:relative;color:var(--ink);border-bottom:1px solid var(--line)}.inner-page .main-menu a:hover{color:#97703c}.inner-page .sub-menu a:hover{color:var(--gold-light)}.hero{min-height:680px;height:min(760px,90vh);position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;color:#fff}.hero-picture,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-picture img{height:100%;object-fit:cover;object-position:center 48%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(8,26,36,.68),rgba(8,26,36,.23) 53%,rgba(8,26,36,.01) 85%),linear-gradient(0deg,rgba(9,29,39,.92),transparent 28%,transparent 82%,rgba(9,29,39,.35))}.hero-content{padding-top:52px;padding-bottom:70px}.hero .eyebrow{margin-bottom:23px}.hero h1{max-width:1050px;text-shadow:0 2px 12px #0001}.hero-content>p{font-size:14px;max-width:650px;line-height:1.8;margin-top:26px;color:#f5f4ed}.hero-buttons{display:flex;gap:14px;margin-top:30px}.mobile-break{display:none}.hero-bottom{position:absolute;bottom:0;left:0;width:100%}.trust-row{display:flex;align-items:center;padding-top:25px;padding-bottom:28px;border-top:1px solid #f2f0e21c;gap:46px}.trust-row>div{display:flex;align-items:center;gap:17px;font-size:11px;line-height:1.6}.trust-row .icon{color:var(--gold-light);width:29px;height:29px}.trust-row>div+div{border-left:1px solid #ffffff20;padding-left:32px}.hero-scroll{margin-left:auto;border:1px solid #ead8b578;width:35px;height:35px;border-radius:50%;text-align:center;line-height:31px;font-size:20px}.services-layout{display:grid;grid-template-columns:.92fr 1.8fr;gap:65px;align-items:center}.section-intro>p{font-size:13px;line-height:1.8;max-width:355px;color:var(--muted)}.section-intro>.text-link{margin-top:23px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{background:#fff;border:1px solid #e9e7e0;border-radius:var(--radius);overflow:hidden;box-shadow:0 5px 12px #24373104;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px #2437310e}.card-image{position:relative;overflow:hidden}.card-image img{height:100%;object-fit:cover;transition:transform .6s}.service-card .card-image{height:152px}.service-card:hover img,.project-card:hover img,.news-card:hover img{transform:scale(1.035)}.service-card-body{position:relative;padding:18px 19px 42px;min-height:165px}.card-number{font-size:11px;color:#7f7d71}.service-card h3{font-size:19px;margin-top:5px}.service-card p{font-size:12px;color:var(--muted);line-height:1.6;margin-top:9px}.circle-arrow{position:absolute;right:16px;bottom:15px;border:1px solid #b3b7b4;color:#4d595a;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:17px;line-height:1}.projects-section{background:var(--navy);color:#fff;position:relative;overflow:hidden}.projects-section:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 5% 85%,#52788435,transparent 65%);pointer-events:none}.projects-layout{display:grid;grid-template-columns:.95fr 1.85fr;gap:55px;align-items:center;position:relative}.projects-section .eyebrow{color:var(--gold)}.projects-section .section-intro>p{color:#d4dee0}.projects-section .button{margin-top:29px}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.project-card{background:#fff;border-radius:var(--radius);color:var(--ink);overflow:hidden}.project-card>a{display:block;height:100%}.project-card .card-image{height:182px}.project-tag{position:absolute;top:11px;left:11px;background:#f2dfb8;color:#4a402b;border-radius:2px;padding:2px 7px;font-size:9px}.project-card-body{position:relative;padding:18px 16px 48px;min-height:180px}.project-card h3{font-size:16px}.location{font-size:10px;line-height:1.6;display:flex;align-items:flex-start;gap:4px;color:var(--muted);margin-top:7px;min-height:32px}.location .icon{width:12px;height:15px;margin-top:1px;color:#9d8556}.project-detail{font-size:11px;margin-top:10px;color:#4a5353}.project-date{position:absolute;left:16px;bottom:19px;font-size:10px;color:var(--muted)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2{font-size:35px}.method-section{background:linear-gradient(110deg,#f8f6f0 70%,#efe8d8)}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}.steps>li{position:relative;padding-top:62px}.steps>li:not(:last-child):after{content:"";position:absolute;height:1px;background:#d4cebd;left:42px;right:-40px;top:18px}.step-number{position:absolute;left:0;top:0;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#e5c897;color:#493a25;font-size:11px}.steps .icon{color:#ac8a54;margin-bottom:10px}.steps h3{font-size:14px}.steps p{font-size:12px;line-height:1.65;margin-top:9px;max-width:235px;color:#58605f}.approach-section{background:#ecefe9;padding:0}.approach-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}.approach-image{position:relative;height:380px;overflow:hidden}.approach-image img{height:100%;object-fit:cover}.approach-image:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#162b3266)}.approach-image>span{position:absolute;z-index:1;left:28px;bottom:25px;color:#fff;font-family:var(--serif);font-size:25px}.approach-copy{padding:45px 0}.approach-copy h2{font-size:40px}.approach-copy p{font-size:13px;max-width:430px;color:var(--muted)}.approach-copy .text-link{margin-top:23px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card{background:#fff;border:1px solid #e6e6dd;border-radius:var(--radius);overflow:hidden}.news-card>a{display:block}.news-card .card-image{height:180px}.news-card>a>div+div{padding:23px}.news-card .eyebrow{font-size:9px;margin-bottom:9px}.news-card h3{font-size:21px;font-family:var(--serif);line-height:1.2}.news-card p{font-size:12px;line-height:1.65;color:var(--muted);margin-top:10px}.news-card .text-link{margin-top:15px}.news-grid>.news-card:only-child{grid-column:1/-1}.news-grid>.news-card:only-child>a{display:grid;grid-template-columns:.75fr 1.6fr;align-items:center}.news-grid>.news-card:only-child .card-image{height:235px}.news-grid>.news-card:only-child h3{font-size:30px;max-width:680px}.news-grid>.news-card:only-child p{max-width:670px}.contact-strip{background:#e9deca;border-top:1px solid #e6d8be;padding:43px 0}.contact-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:70px}.contact-strip h2{font-size:42px}.contact-strip .eyebrow{margin-bottom:11px}.contact-strip-inner>div+div{max-width:380px}.contact-strip p{font-size:13px;margin:0 0 19px}.site-footer{background:#102229;color:#d4dbd8;padding-top:50px;font-size:11px}.footer-grid{display:grid;grid-template-columns:1.2fr .9fr .8fr 1.15fr;gap:60px;padding-bottom:40px}.site-footer .wordmark{color:#f5ead7}.footer-tagline{font-size:10px;color:#acb7b3}.site-footer h2{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:0;color:#fff;margin-bottom:17px;line-height:1.4}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin-bottom:7px}.site-footer a:hover{color:var(--gold)}.footer-grid>div:last-child>a{display:block;margin-bottom:5px}.footer-grid p{line-height:1.8;color:#aeb8b4}.footer-bottom{border-top:1px solid #ffffff16;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:20px;padding-bottom:22px;color:#a5b2ad;font-size:9px}.footer-bottom>div{display:flex;gap:18px}.page-top{padding:65px 0 40px}.breadcrumbs{display:flex;gap:10px;color:var(--muted);font-size:11px;line-height:1.5;margin-bottom:35px;flex-wrap:wrap}.page-heading{max-width:920px}.page-heading h1{font-size:clamp(38px,4.5vw,64px)}.page-heading .lede{font-size:17px;color:var(--muted);max-width:740px;line-height:1.7;margin-top:24px}.page-content{padding:0 0 70px}.prose{max-width:780px;font-size:16px;line-height:1.85}.prose h2{font-size:34px;margin:40px 0 18px}.prose h3{font-size:21px;margin-top:28px}.prose p{margin:18px 0}.prose a{color:#856326;text-decoration:underline;text-underline-offset:4px}.prose li{padding-left:5px;margin:8px 0}.prose img{border-radius:var(--radius)}.prose .wp-block-button__link{font-size:13px;padding:13px 24px;border-radius:var(--radius);background:var(--gold);color:var(--ink);text-decoration:none}.content-columns{display:grid;grid-template-columns:1.65fr .85fr;gap:90px;align-items:start}.content-aside{position:sticky;top:35px;background:#eee9df;padding:30px;border-top:2px solid var(--gold)}.content-aside h2{font-size:27px}.content-aside p{font-size:13px;color:#606763}.content-aside .button{margin-top:23px;width:100%;gap:12px}.service-visual{height:390px;margin-top:35px;overflow:hidden;border-radius:var(--radius)}.service-visual img{height:100%;object-fit:cover}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.catalog-grid .project-card .card-image{height:250px}.catalog-grid .project-card-body{min-height:185px}.project-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:55px;align-items:center;margin-top:10px}.project-hero-image{height:390px;border-radius:var(--radius);overflow:hidden}.project-hero-image img{height:100%;object-fit:cover}.project-facts{margin:0}.project-facts div{padding:15px 0;border-bottom:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;font-size:13px}.project-facts dt{color:var(--muted)}.project-facts dd{margin:0;text-align:right;max-width:65%}.project-hero .button{margin-top:26px}.project-note{font-size:11px;color:var(--muted);margin-top:16px}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}.contact-details{background:var(--navy);color:#fff;padding:35px;border-radius:var(--radius);align-self:start}.contact-details h2{font-size:31px}.contact-details>a{display:block;font-size:20px;font-family:var(--serif);margin-top:17px}.contact-details p{font-size:13px;color:#d0dad9}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{font-size:12px;font-weight:600;display:block}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;background:#fff;border:1px solid #c7ccc5;border-radius:3px;padding:11px 13px;margin-top:7px;color:var(--ink);min-height:46px}.contact-form textarea{resize:vertical}.field-full{grid-column:1/-1}.contact-form .consent{font-size:11px;font-weight:400;display:flex;gap:10px;align-items:flex-start;line-height:1.6}.consent input{margin-top:3px}.contact-form .button{justify-self:start}.notice{padding:15px 18px;background:#eee5d4;font-size:12px;border-left:2px solid #a78247;margin-bottom:25px}.notice-success{background:#e4eddf;border-color:#4e7244}.hp-field{position:absolute;left:-10000px}.error-page{text-align:center;padding:100px 0}.error-page p{margin:25px auto;max-width:500px}.post-meta{font-size:12px;color:var(--muted);margin-top:20px}.inner-services{margin-bottom:45px}.inner-services .service-card .card-image{height:220px}body.admin-bar .site-header{top:32px}.inner-page.admin-bar .site-header{top:0}
@media(min-width:1600px){.hero{height:780px}.wrap{width:min(1400px,calc(100% - 150px))}.hero-content{padding-top:75px}.hero h1{font-size:77px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.header-inner{gap:35px}.main-menu{gap:18px}.nav-actions{gap:15px}.services-layout{gap:35px;grid-template-columns:.9fr 1.8fr}.projects-layout{gap:30px;grid-template-columns:.8fr 1.8fr}.service-card-body{padding:15px 13px 42px}.service-card h3{font-size:17px}.service-card .card-image{height:125px}.project-card .card-image{height:150px}.project-card-body{padding-left:12px;padding-right:12px}.project-card h3{font-size:15px}.trust-row{gap:25px}.trust-row>div+div{padding-left:22px}.footer-grid{gap:30px}.approach-layout{gap:45px}.content-columns{gap:40px}.contact-layout{gap:40px}}
@media(max-width:950px){.header-inner{height:85px}.menu-toggle{display:flex;align-items:center;justify-content:center;margin-left:auto;width:40px;height:40px;background:transparent;border:0;color:inherit;cursor:pointer}.menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:23px;height:1px;background:currentColor;position:relative}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0}.menu-lines:before{top:-7px}.menu-lines:after{top:7px}.menu-toggle[aria-expanded=true] .menu-lines{background:transparent}.menu-toggle[aria-expanded=true] .menu-lines:before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{top:0;transform:rotate(-45deg)}#navigation{display:none;position:absolute;top:85px;left:0;right:0;flex-direction:column;align-items:stretch;gap:20px;padding:20px 32px 30px;background:var(--navy);color:#fff;box-shadow:0 20px 25px #0002}#navigation.is-open{display:flex}.main-menu{display:block;font-size:15px}.main-menu>li>a{padding:12px 0}.main-menu>li{border-bottom:1px solid #ffffff15}.sub-menu{display:block;position:static;box-shadow:none;padding:0 0 10px 15px;font-size:12px;background:none}.sub-menu a{padding:7px 0;color:#d1d9d9}.nav-actions{justify-content:space-between}.inner-page .main-menu a:hover{color:var(--gold)}.services-layout{display:block}.section-intro>p{max-width:540px}.services-grid{margin-top:30px}.service-card .card-image{height:180px}.service-card-body{padding:20px 20px 45px}.projects-layout{display:block}.projects-section .section-intro{max-width:600px}.projects-grid{margin-top:30px}.project-card .card-image{height:195px}.trust-row{gap:20px}.trust-row>div{font-size:10px;gap:11px}.trust-row>div+div{padding-left:15px}.hero-scroll{display:none}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 60px}.project-hero{gap:30px}.project-hero-image{height:310px}.contact-layout{gap:30px}.contact-details{padding:25px}.approach-copy h2{font-size:33px}}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}.section{padding:42px 0}h1{font-size:45px}h2{font-size:37px}.header-inner{height:80px}.wordmark{font-size:22px}.wordmark>span{font-size:6px;margin-top:8px}#navigation{top:80px;padding:15px 20px 25px}.hero{height:auto;min-height:820px;justify-content:flex-start}.hero-picture img{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#112a37b3,#112a3730 90%),linear-gradient(0deg,#0e2736f5,transparent 45%,transparent 80%,#112a374d)}.hero-content{padding-top:126px;padding-bottom:320px}.hero .eyebrow{font-size:9px;letter-spacing:.12em;max-width:265px;margin-bottom:20px}.hero h1{font-size:clamp(38px,9vw,52px);line-height:1.09;letter-spacing:-.035em;max-width:500px}.mobile-break{display:block}.hero-content>p{font-size:12px;line-height:1.75;max-width:340px;margin-top:22px}.hero-content>p br{display:none}.hero-buttons{display:flex;flex-direction:column;gap:11px;align-items:stretch;max-width:350px;margin-top:25px}.hero-buttons .button{min-height:47px}.hero-buttons .button-outline{background:#263a4559}.trust-row{display:grid;grid-template-columns:1fr 1fr;gap:22px 15px;padding:24px 0 28px}.trust-row>div{font-size:11px;gap:12px}.trust-row .icon{width:25px;height:25px}.trust-row>div+div{padding-left:0;border:0}.services-layout .section-intro h2{max-width:320px}.section-intro>p{font-size:13px}.eyebrow{font-size:9px;margin-bottom:13px}.services-grid{grid-template-columns:1fr;gap:16px;margin-top:28px}.service-card .card-image{height:175px}.service-card-body{min-height:132px;padding:15px 18px 22px}.card-number{position:absolute;right:18px;top:17px}.service-card h3{font-size:21px;margin-top:0}.service-card p{max-width:245px;margin-top:7px}.service-card .circle-arrow{bottom:18px}.projects-section h2{font-size:35px}.projects-section .section-intro>p{max-width:330px}.projects-grid{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-20px;padding-right:20px;padding-bottom:8px}.projects-grid .project-card{min-width:82%;scroll-snap-align:start}.project-card .card-image{height:205px}.project-card-body{padding:19px 18px 46px;min-height:168px}.project-card h3{font-size:20px}.location{font-size:11px;min-height:25px}.project-detail{font-size:12px}.project-date{left:18px}.section-heading{display:block;margin-bottom:27px}.section-heading h2{font-size:33px}.section-heading>.text-link{margin-top:18px}.steps{grid-template-columns:1fr;gap:0}.steps>li{padding:0 0 29px 58px;min-height:112px;display:block}.steps>li:not(:last-child):after{top:37px;left:18px;bottom:0;right:auto;width:1px;height:auto}.steps .icon{display:none}.step-number{width:36px;height:36px}.steps h3{font-size:15px;padding-top:4px}.steps p{font-size:12px;max-width:310px;margin-top:7px}.steps>li:last-child{padding-bottom:0;min-height:80px}.approach-layout{display:block;width:100%}.approach-image{height:260px}.approach-copy{padding:36px 20px 40px}.approach-copy h2{font-size:36px}.approach-copy p{max-width:none}.news-grid{grid-template-columns:1fr}.news-grid>.news-card:only-child>a{display:block}.news-grid>.news-card:only-child .card-image{height:180px}.news-grid>.news-card:only-child h3{font-size:25px}.news-card>a>div+div{padding:23px}.contact-strip{padding:35px 0}.contact-strip-inner{display:block}.contact-strip h2{font-size:38px}.contact-strip-inner>div+div{margin-top:22px}.contact-strip .button{width:100%}.footer-grid{gap:34px 25px;padding-bottom:32px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.site-footer{padding-top:35px}.footer-bottom{align-items:start;flex-wrap:wrap;gap:15px}.footer-bottom>div{order:3;width:100%}.page-top{padding:35px 0 30px}.breadcrumbs{font-size:10px;margin-bottom:25px}.page-heading h1{font-size:41px}.page-heading .lede{font-size:15px;margin-top:18px}.page-content{padding-bottom:45px}.content-columns{display:block}.content-aside{position:static;margin-top:35px;padding:25px}.prose{font-size:15px;line-height:1.8}.prose h2{font-size:29px;margin-top:30px}.service-visual{height:235px;margin-top:27px}.catalog-grid{grid-template-columns:1fr;gap:20px}.catalog-grid .project-card .card-image{height:220px}.catalog-grid .project-card-body{min-height:175px}.project-hero{display:block}.project-hero-image{height:250px;margin-bottom:25px}.project-facts div{font-size:12px}.contact-layout{display:flex;flex-direction:column-reverse;gap:35px}.contact-layout>div{width:100%}.contact-details{width:100%}.contact-form{grid-template-columns:1fr;gap:17px}.field-full{grid-column:auto}.contact-form .button{width:100%}.inner-services .service-card .card-image{height:180px}body.admin-bar .site-header{top:46px}.inner-page.admin-bar .site-header{top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Native Gutenberg homepage. The classes preserve the layout while every text,
   image, link and group remains editable with normal WordPress controls. */
.hero.wp-block-group:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#081a24ad,#081a243b 53%,#081a2403 85%),linear-gradient(0deg,#091d27eb,transparent 28%,transparent 82%,#091d2759)}
.hero>.wp-block-image.hero-picture{margin:0;max-width:none;width:100%;height:100%;z-index:-2}
.hero>.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.home-page main>.wp-block-group{margin-block-start:0}.home-page .wp-block-group.wrap{margin-left:auto;margin-right:auto}
.wp-block-buttons.hero-buttons{margin-top:30px;gap:14px}.hero .hero-content>.wp-block-heading{max-width:1050px}
.wp-block-button .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 23px;border-radius:var(--radius);font-family:var(--sans);font-size:12px;line-height:1.5;font-weight:600;transition:background .2s,transform .2s}
.wp-block-button.button-gold,.wp-block-button.button-outline{background:none;box-shadow:none;border:0;color:inherit}
.wp-block-button.button-gold .wp-block-button__link{background:linear-gradient(115deg,var(--gold-light),var(--gold));color:var(--ink);border:1px solid transparent}
.wp-block-button.button-outline .wp-block-button__link{background:#10232d1a;border:1px solid #c4c6bf99;color:#fff}
.wp-block-button .wp-block-button__link:hover{transform:translateY(-2px);filter:brightness(1.04)}
.trust-row>.trust-item{display:flex;align-items:center;gap:17px}.trust-item>p{margin:0}.trust-icon{width:29px;height:29px;margin:0;flex:none}.trust-icon img{width:29px;height:29px}
.service-card>.wp-block-image.card-image{margin:0}.service-card .card-image img{width:100%;height:100%;object-fit:cover}.service-card .wp-block-buttons{margin:0}
.service-card .card-number{margin:0;font-size:11px}.service-card .wp-block-button.card-arrow{position:absolute;right:16px;bottom:15px}.card-arrow .wp-block-button__link{border:1px solid #b3b7b4;min-height:26px;width:26px;height:26px;padding:0;background:transparent;color:#4d595a;font-size:17px;border-radius:50%}
.service-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}.section-intro>p.text-link{color:var(--ink);margin-top:23px}.projects-section .section-intro>.wp-block-buttons{margin-top:29px}
.section-intro .text-link a,.approach-copy .text-link a,.section-heading>.text-link a{display:inline-block;font-size:12px;color:inherit;border-bottom:1px solid transparent}.text-link a:hover{border-bottom-color:currentColor}.section-heading>.text-link{margin-top:0;flex:none}
.steps>.step-card{position:relative;padding-top:62px}.steps>.step-card:not(:last-child):after{content:"";position:absolute;height:1px;background:#d4cebd;left:42px;right:-40px;top:18px}.step-card .step-number{margin:0}.step-icon{width:25px;height:25px;margin:0 0 10px}.step-icon img{width:25px;height:25px}
.approach-image>.wp-block-image{height:100%;margin:0}.approach-image>.wp-block-image img{height:100%;object-fit:cover}.approach-image>.image-caption{position:absolute;z-index:1;left:28px;bottom:25px;color:#fff;font-family:var(--serif);font-size:25px}
.wp-block-group .wp-block-image img{box-sizing:border-box}.home-page .wp-block-group.alignfull{max-width:none}.home-page .wp-block-buttons{justify-content:flex-start}
@media(max-width:680px){.hero.wp-block-group:before{background:linear-gradient(90deg,#112a37b3,#112a3730 90%),linear-gradient(0deg,#0e2736f5,transparent 45%,transparent 80%,#112a374d)}.wp-block-buttons.hero-buttons{flex-direction:column;align-items:stretch;max-width:350px;gap:11px;margin-top:25px}.hero-buttons>.wp-block-button,.hero-buttons .wp-block-button__link{width:100%}.hero-buttons .button-outline .wp-block-button__link{background:#263a4559}.trust-row>.trust-item{gap:12px}.trust-icon,.trust-icon img{width:25px;height:25px}.steps>.step-card{padding:0 0 29px 58px;min-height:112px}.steps>.step-card:not(:last-child):after{top:37px;left:18px;bottom:0;right:auto;width:1px;height:auto}.step-icon{display:none}.steps>.step-card:last-child{padding-bottom:0;min-height:80px}.contact-strip .wp-block-buttons,.contact-strip .wp-block-button,.contact-strip .wp-block-button__link{width:100%}.section-heading>.text-link{margin-top:18px}}
/* Keep blocks easy to select and edit in the WordPress canvas. */
.editor-styles-wrapper .hero-bottom{position:relative;margin-top:40px}.editor-styles-wrapper .hero{height:auto;min-height:600px}.editor-styles-wrapper .hero-content{padding-top:65px;padding-bottom:25px}.editor-styles-wrapper .hero-picture{pointer-events:auto}.editor-styles-wrapper .wp-block[data-type="fresini/projects"],.editor-styles-wrapper .wp-block[data-type="fresini/news"]{width:100%;max-width:none}.editor-styles-wrapper .components-notice{color:#14272d;font-size:12px;margin:0 0 12px}.editor-styles-wrapper .wp-block-group{max-width:none}.editor-styles-wrapper .hero p{color:#fff}
.hero-content>p.eyebrow{font-size:10px;letter-spacing:.16em;line-height:1.6;color:#faf2e4;margin-top:0;margin-bottom:23px;max-width:none}.section-intro>p.eyebrow,.approach-copy>p.eyebrow{font-size:10px;letter-spacing:.16em;line-height:1.6;color:#6e613f;margin-top:0;margin-bottom:17px}.projects-section .section-intro>p.eyebrow{color:var(--gold)}
@media(max-width:680px){.hero-content>p.eyebrow{font-size:9px;letter-spacing:.12em;max-width:265px;margin-bottom:20px}.section-intro>p.eyebrow,.approach-copy>p.eyebrow{font-size:9px;margin-bottom:13px}}
.custom-logo-link{display:block;flex:none}.custom-logo{width:150px;height:auto;max-height:60px;object-fit:contain}.site-footer .custom-logo{max-width:180px}.wp-block-buttons a.wp-block-button__link:focus-visible{outline:3px solid #a97b33;outline-offset:5px}
.service-overview{max-width:none}.service-overview>p,.service-overview>h2{max-width:780px}.service-overview .services-grid{margin-bottom:40px}.service-overview .service-card-body>p{font-size:12px;line-height:1.6;margin-top:9px}.service-overview .service-card h3{font-size:20px;margin-top:5px}.service-overview .service-card a{color:inherit;text-decoration:none}.service-overview .service-card .card-number{margin:0;font-size:11px}
.editor-styles-wrapper [data-type="fresini/projects"] .projects-grid a,.editor-styles-wrapper [data-type="fresini/news"] .news-grid a{pointer-events:none}.page-content .prose .wp-block-image{margin:24px 0}
/* Preserve the original logo and its colours on every background. */
.custom-logo-link{display:inline-block;background:transparent;padding:0;line-height:0}.custom-logo{width:114px;height:auto;max-height:none;object-fit:contain}.site-footer .custom-logo{width:140px;max-width:140px}@media(max-width:680px){.custom-logo{width:96px}}

.inner-home-link{position:relative;z-index:2;padding-top:108px;margin-bottom:-48px}.button-back-home{background:#fff;border-color:var(--line);color:var(--ink)}.button-back-home:hover{background:var(--gold-light)}
@media(max-width:680px){.inner-home-link{padding-top:88px;margin-bottom:-35px}}

.header-meta-menu{list-style:none;margin:0;padding:0;font-size:12px}.header-meta-menu a,.header-meta-link{white-space:nowrap}.header-meta-menu a:hover,.header-meta-link:hover{color:var(--gold-light)}.inner-page .header-meta-menu a:hover,.inner-page .header-meta-link:hover{color:#97703c}
/* Internal-page header spacing and contained logo */
.inner-home-link{padding-top:12px;margin-bottom:-48px}
.site-header .custom-logo{display:block;width:92px;height:92px;max-height:92px;object-fit:contain}
@media(max-width:680px){.inner-home-link{padding-top:10px;margin-bottom:-35px}.site-header .custom-logo{width:68px;height:68px;max-height:68px}}
/* Home layout: service cards in the hero, trust points below the introduction */
.home-page .hero{height:min(820px,90vh);min-height:780px;justify-content:flex-start}
.home-page .hero-content{padding-top:135px;padding-bottom:0}
.home-page .hero-bottom{bottom:24px}
.home-page .hero-bottom .services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}
.home-page .hero-bottom .service-card .card-image{height:100px}
.home-page .hero-bottom .service-card-body{min-height:112px;padding:10px 15px 36px}
.home-page .services-layout>.trust-row{border-top:1px solid var(--line);padding:24px 0 0;margin-top:32px;gap:24px}
.home-page .services-layout>.trust-row>div+div{border-left-color:var(--line);padding-left:20px}
@media(max-width:950px) and (min-width:681px){.home-page .hero{min-height:760px}.home-page .hero-content{padding-top:120px}.home-page .hero-bottom .service-card .card-image{height:85px}.home-page .hero-bottom .service-card-body{min-height:105px;padding:9px 11px 32px}.home-page .hero-bottom .service-card h3{font-size:16px}}
@media(max-width:680px){.home-page .hero{height:auto;min-height:900px;justify-content:flex-start}.home-page .hero-content{padding-top:126px;padding-bottom:20px}.home-page .hero-bottom{position:relative;bottom:auto;margin-top:auto;padding-bottom:18px}.home-page .hero-bottom .services-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0;padding:0 20px 8px;width:100%}.home-page .hero-bottom .service-card{min-width:82%;scroll-snap-align:start}.home-page .hero-bottom .service-card .card-image{height:130px}.home-page .hero-bottom .service-card-body{min-height:120px;padding:12px 16px 35px}.home-page .services-layout>.trust-row{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;padding-top:20px;margin-top:24px}.home-page .services-layout>.trust-row>div+div{border:0;padding-left:0}}
/* Option 1: light editorial service cards over the home hero */
.home-page .hero-bottom .service-card{background:#fffdf8;border:1px solid #eee9df;border-radius:6px;overflow:hidden;box-shadow:0 10px 24px #0619232b;color:var(--ink);transition:transform .24s ease,box-shadow .24s ease}
.home-page .hero-bottom .service-card:hover,.home-page .hero-bottom .service-card:focus-within{transform:translateY(-4px);box-shadow:0 15px 30px #06192342}
.home-page .hero-bottom .service-card .card-image{background:#ece8df}
.home-page .hero-bottom .service-card .service-card-body{background:#fffdf8}
.home-page .hero-bottom .service-card .card-number{color:#8a744c;letter-spacing:.08em}
.home-page .hero-bottom .service-card h3{font-family:var(--serif);font-size:18px;line-height:1.25;color:var(--ink)}
.home-page .hero-bottom .service-card p{color:#626b6b;line-height:1.5}
.home-page .hero-bottom .service-card .card-arrow .wp-block-button__link{background:#fffdf8;border-color:#c8c8c1;color:var(--ink)}
/* Show more of the people and property photos in the home service cards. */
@media(min-width:951px){.home-page .hero{min-height:820px;height:min(880px,94vh)}.home-page .hero-bottom .service-card .card-image{height:190px}.home-page .hero-bottom .service-card:nth-child(1) .card-image img{object-position:center 60%}.home-page .hero-bottom .service-card:nth-child(2) .card-image img{object-position:center 48%}.home-page .hero-bottom .service-card:nth-child(3) .card-image img{object-position:center 58%}}
@media(max-width:950px) and (min-width:681px){.home-page .hero{min-height:800px}.home-page .hero-bottom .service-card .card-image{height:150px}.home-page .hero-bottom .service-card:nth-child(1) .card-image img{object-position:center 60%}.home-page .hero-bottom .service-card:nth-child(2) .card-image img{object-position:center 48%}.home-page .hero-bottom .service-card:nth-child(3) .card-image img{object-position:center 58%}}
@media(max-width:950px) and (min-width:681px){.home-page .hero-bottom .service-card h3{font-size:16px}}
@media(max-width:680px){.home-page .hero-bottom .service-card{box-shadow:0 8px 20px #0619232b}.home-page .hero-bottom .service-card h3{font-size:20px}}
/* Home trust points: larger, readable 2 × 2 cards. */
.home-page .services-layout>.trust-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:14px;padding:0;margin:0;border:0}
.home-page .services-layout>.trust-row>.trust-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:13px;min-height:158px;padding:21px 23px;background:#fffdf8;border:1px solid #e8e4da;border-radius:6px;box-shadow:0 6px 18px #14272d08}
.home-page .services-layout>.trust-row>.trust-item+.trust-item{border-left:1px solid #e8e4da;padding-left:23px}
.home-page .services-layout>.trust-row .trust-icon,.home-page .services-layout>.trust-row .trust-icon img{width:40px;height:40px}
.home-page .services-layout>.trust-row>.trust-item>p{margin:0;font-size:16px;line-height:1.45;color:var(--ink)}
@media(max-width:950px) and (min-width:681px){.home-page .services-layout>.trust-row{gap:10px}.home-page .services-layout>.trust-row>.trust-item{min-height:138px;padding:15px 16px;gap:10px}.home-page .services-layout>.trust-row>.trust-item+.trust-item{padding-left:16px}.home-page .services-layout>.trust-row .trust-icon,.home-page .services-layout>.trust-row .trust-icon img{width:32px;height:32px}.home-page .services-layout>.trust-row>.trust-item>p{font-size:13px}}
@media(max-width:680px){.home-page .services-layout>.trust-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;margin-top:28px}.home-page .services-layout>.trust-row>.trust-item{min-height:132px;padding:15px;gap:9px}.home-page .services-layout>.trust-row>.trust-item+.trust-item{padding-left:15px}.home-page .services-layout>.trust-row .trust-icon,.home-page .services-layout>.trust-row .trust-icon img{width:30px;height:30px}.home-page .services-layout>.trust-row>.trust-item>p{font-size:13px;line-height:1.4}}

/* Keep the home intro readable and give the service cards a calm transition from the hero image. */
@media(min-width:951px){
  .home-page .hero{height:min(960px,100vh);min-height:900px}
  .home-page .hero-bottom .services-grid{width:min(1680px,calc(100% - 112px));margin-inline:auto;gap:18px;padding:14px;background:rgba(247,245,240,.96);border:1px solid #ffffff9c;border-radius:8px;box-shadow:0 18px 44px #06192335}
  .home-page .hero-bottom .service-card .card-image{height:125px}
  .home-page .hero-bottom .service-card-body{min-height:102px;padding:12px 18px 34px}
}
@media(max-width:950px) and (min-width:681px){
  .home-page .hero{min-height:860px}
  .home-page .hero-bottom .services-grid{width:calc(100% - 64px);margin-inline:auto;padding:10px;gap:12px;background:rgba(247,245,240,.96);border-radius:8px;box-shadow:0 16px 36px #06192335}
  .home-page .hero-bottom .service-card .card-image{height:120px}
  .home-page .hero-bottom .service-card-body{min-height:98px;padding:10px 12px 32px}
}

/* Keep the cards directly over the hero image without a cream tray. */
@media(min-width:681px){
  .home-page .hero-bottom .services-grid{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
}
.home-page .services-grid a.service-card{display:block;color:var(--ink)}

/* Contact page: clear, welcoming layout and country-code field. */
.contact-form-card{padding:34px;background:#fff;border:1px solid #e5e3da;border-radius:var(--radius);box-shadow:0 12px 34px #14272d08}
.contact-form-card h2{font-size:31px}
.contact-form-card .form-intro{margin:9px 0 25px;color:var(--muted);font-size:13px}
.contact-details h2{font-size:31px}
.contact-details>p{line-height:1.8}
.contact-direct{display:grid;gap:13px;margin-top:24px}
.contact-direct a{display:flex;flex-direction:column;font-size:18px;font-family:var(--serif);line-height:1.4}
.contact-direct a span{font:600 9px/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-light)}
.contact-details .contact-address{margin-top:24px;padding-top:17px;border-top:1px solid #ffffff24;font-size:12px}
.contact-form .optional{font-size:10px;color:var(--muted);font-weight:400}
.contact-form .phone-input-group{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:8px;margin-top:7px}
.contact-form .phone-input-group select,.contact-form .phone-input-group input{margin-top:0;min-width:0}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#87908e;opacity:1}
.contact-form textarea{min-height:135px}
@media(max-width:950px){.contact-layout{grid-template-columns:1fr 1.2fr;gap:28px}.contact-form-card{padding:26px}.contact-details{padding:26px}}
@media(max-width:680px){.contact-form-card{padding:23px 18px}.contact-layout{flex-direction:column-reverse}.contact-form .phone-input-group{grid-template-columns:minmax(120px,.9fr) minmax(0,1.1fr)}.contact-details{padding:25px 22px}}

/* Language selector: French active, future translations clearly marked */
.language-picker{position:relative;z-index:40;font-size:12px}
.language-picker summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;padding:8px 10px;border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 22%,transparent);border-radius:4px;white-space:nowrap}
.language-picker summary::-webkit-details-marker{display:none}
.language-picker .language-flag{font-size:16px;line-height:1}
.language-picker .current-language{font-size:10px;letter-spacing:.08em}
.language-picker .language-chevron{font-size:13px;line-height:1;transition:transform .2s}
.language-picker[open] .language-chevron{transform:rotate(180deg)}
.language-picker ul{position:absolute;top:calc(100% + 9px);right:0;min-width:185px;margin:0;padding:7px;list-style:none;background:var(--navy);color:#fff;border:1px solid #ffffff20;border-radius:5px;box-shadow:0 12px 28px #06192330}
.language-picker li+li{border-top:1px solid #ffffff16}
.language-picker li>a,.language-picker .language-option{display:flex;align-items:center;gap:9px;min-height:39px;padding:7px 9px;border-radius:3px;white-space:nowrap}
.language-picker li>a:hover{background:#ffffff12;color:var(--gold-light)}
.language-picker .language-option small{margin-left:auto;font-size:9px;color:#e9cf9f;letter-spacing:.03em}
.language-picker .is-current{font-weight:600}
.language-picker .is-upcoming{color:#d3dcdd;cursor:default}
.inner-page .language-picker summary{border-color:#dedfd8}
.inner-page .language-picker li>a:hover{color:var(--gold-light)}

/* Contact page: floating WhatsApp access, including iPhone safe areas. */
.contact-whatsapp{position:fixed;right:calc(22px + env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));z-index:60;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 6px 22px #071f1c45;transition:transform .2s,box-shadow .2s}
.contact-whatsapp:hover{transform:translateY(-3px);box-shadow:0 9px 26px #071f1c55}
.contact-whatsapp svg{display:block;width:32px;height:32px}
@media(max-width:680px){.contact-whatsapp{right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));width:56px;height:56px}.contact-whatsapp svg{width:30px;height:30px}}

/* Preserve the approved palette in browsers that automatically darken pages. */
:root{color-scheme:only light}
