@charset "UTF-8";
/* Zergiebel: generous content gutters, authentic imagery, native controls. */
@font-face{font-family:Vegur;src:url('../wp-content/themes/dirk-zergiebel/assets/fonts/vegur-r_0500-webfont.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#34312e;--soft:#625d56;--gold:#875300;--gold-bright:#da8a00;--line:#e6e1d9;--pale:#f7f5f1;--max:1120px;--gutter:64px;--outer:64px;--font:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;color:var(--ink);font:16px/1.8 var(--font);background:#f3f1ed;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:var(--gold)}
img{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer}
button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #975b00;outline-offset:4px}
main:focus-visible{outline:3px solid #975b00;outline-offset:4px}
[hidden]{display:none!important}::selection{background:#f7deb3;color:#34312e}
h1,h2,h3,h4{font-family:Vegur,Arial,sans-serif;font-weight:700;line-height:1.22;letter-spacing:-.015em;overflow-wrap:break-word;hyphens:auto}
h1,h2,h3,p,figure{margin:0}h1{font-size:40px}h2{font-size:30px}h3{font-size:24px}p+p{margin-top:1em}ul{padding-left:1.25em}
.wrap{width:min(var(--max),calc(100% - var(--outer)));margin-inline:auto;padding-inline:var(--gutter)}
.skip{position:fixed;top:8px;left:12px;z-index:100;padding:12px 20px;background:#fff;transform:translateY(-160%)}.skip:focus{transform:none}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}
.header-inner{min-height:114px;display:flex;align-items:center;gap:24px}
.brand{flex:0 0 113px}.brand img{width:113px;height:71px}
.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex:1;min-width:0;font:700 15px/1.5 Vegur,Arial,sans-serif}
.main-nav>a{padding:11px 9px;white-space:nowrap;text-decoration:none;border-radius:5px;min-height:44px}
.main-nav>a[aria-current=page]{background:var(--ink);color:#fff}.main-nav>a:hover{background:var(--pale);color:var(--gold)}.main-nav>a[aria-current=page]:hover{background:#51483e;color:#fff}
.header-phone{display:none}.menu-toggle{display:none;min-height:46px;padding:9px 15px;background:#fff;border:1px solid #bcb4a8;border-radius:5px}.mobile-contact{display:none}
main.wrap,.page-home main{background:#fff;border:1px solid var(--line);border-radius:10px;margin-top:28px}
.page-home main{width:min(var(--max),calc(100% - var(--outer)));margin-inline:auto;overflow:hidden}
.page-home main .wrap{width:100%}
.home-hero{padding-top:40px}
.hero-accordion{display:flex;flex-direction:column;background:var(--pale);border:1px solid var(--line);border-radius:7px;overflow:hidden}
.hero-media{width:100%;min-width:0}.hero-panel{position:relative}.hero-photo-link{display:block}.hero-photo-link:focus-visible{outline-offset:-5px}
.hero-panel img{width:100%;height:auto;aspect-ratio:970/350;object-fit:contain}
.hero-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 28px;background:var(--pale);font-size:14px;color:var(--soft);line-height:1.6}
.hero-caption strong{display:block;font:700 26px/1.25 Vegur,Arial,sans-serif;color:var(--ink);margin-bottom:4px}.hero-caption span{min-width:0}.hero-caption a{display:inline-flex;align-items:center;min-height:44px;flex-shrink:0;color:var(--gold);font-weight:600}
.hero-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);background:#fff}
.hero-tab{min-width:0;border:0;border-right:1px solid var(--line);background:#fff;color:var(--ink);font:700 18px/1.4 Vegur,Arial,sans-serif;padding:16px 10px;min-height:58px;overflow-wrap:anywhere;hyphens:auto}
.hero-tab:last-child{border-right:0}.hero-tab[aria-selected=true]{background:var(--ink);color:#fff}.hero-tab:hover{background:#eee9e0;color:var(--gold)}.hero-tab[aria-selected=true]:hover{background:#51483e;color:#fff}.hero-tab:focus-visible{outline-offset:-5px}.hero-footnote{display:none}
.intro{padding-block:56px}.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 232px;gap:48px;align-items:start}.intro h1{margin-bottom:22px;max-width:760px}.intro .lead{font-size:17px;max-width:72ch}
.intro-contact{border-left:2px solid #d7a65a;padding-left:24px;margin-top:8px;font-size:14px;color:var(--soft)}.intro-contact>a{display:block;font:700 24px/1.4 Vegur,Arial,sans-serif;text-decoration:none;color:var(--ink);margin:12px 0}.intro-contact p+p{margin-top:16px}
.lead{color:var(--soft);font-size:18px;line-height:1.8;overflow-wrap:anywhere;hyphens:auto}.eyebrow{font-size:12px;color:var(--gold);font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}
.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;background:var(--ink);border:1px solid var(--ink);color:#fff;text-decoration:none;border-radius:5px;font-size:15px;font-weight:600;line-height:1.5}
.button:hover{color:#fff;background:#51483e}.button.secondary{background:#fff;color:var(--ink);border-color:#bcb4a8}.button.secondary:hover{background:var(--pale)}.button.gold{background:var(--gold);border-color:var(--gold)}
.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--gold);font-size:15px;margin-top:10px}
.section{padding-block:52px 56px;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:30px}.section-head h2{max-width:610px}.section-head>p{max-width:300px;font-size:15px;color:var(--soft);line-height:1.75}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.service-card{min-width:0;background:var(--pale);border:1px solid var(--line);border-radius:7px;padding:18px}.service-card>a{text-decoration:none}.service-card>a:first-child{display:block}
.service-image{background:#fff;border-radius:4px;overflow:hidden}.service-image img{width:100%;height:auto;aspect-ratio:205/130;object-fit:contain}
.service-card h3{margin:20px 0 12px;font-size:24px}.service-card p{font-size:15px;color:var(--soft);line-height:1.8;overflow-wrap:anywhere;hyphens:auto}
.more-services{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line);font-size:15px}.more-services a{min-height:40px;display:inline-flex;align-items:center;color:var(--gold)}
.secondary-services,.process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.secondary-services{border-top:1px solid var(--line);padding-top:32px;margin-top:36px}.secondary-services h3,.process-list h3{margin-bottom:14px}.secondary-services h3 a{text-decoration:none}.secondary-services p,.process-list p{color:var(--soft)}
.process-list{list-style:none;counter-reset:steps;padding:0;margin:0}.process-list>li{counter-increment:steps;min-width:0;border-top:2px solid #cdbda6;padding-top:22px}.process-list>li:before{content:'0' counter(steps);font-size:14px;color:var(--gold);display:block;margin-bottom:12px}
.project-teaser{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;padding:32px;background:var(--pale);border:1px solid var(--line);border-radius:7px}.project-teaser img{width:100%;height:auto;object-fit:contain}.project-teaser h2{margin-bottom:18px}.project-teaser p{color:var(--soft)}
.featured-work{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.featured-work figure{min-width:0}.featured-work a{display:flex;align-items:center;justify-content:center;background:var(--pale);border:1px solid var(--line);border-radius:7px;padding:8px;aspect-ratio:4/3}.featured-work img{width:100%;height:auto;max-height:100%;object-fit:contain}.featured-work figcaption{font-size:15px;color:var(--soft);margin-top:14px;overflow-wrap:anywhere;hyphens:auto}
.region-links{display:flex;flex-wrap:wrap;gap:12px}.region-links a{padding:10px 18px;min-height:46px;border:1px solid #cfc7ba;border-radius:5px;display:flex;align-items:center;text-decoration:none}.region-links a:hover{background:var(--pale)}.section-note{font-size:15px;color:var(--soft);margin-top:24px;max-width:760px}
.contact-band{display:flex;justify-content:space-between;align-items:center;gap:36px;padding-block:52px}.contact-band h2{margin-bottom:14px}.contact-band p{color:var(--soft);max-width:620px}.contact-band .button-row{flex-shrink:0;margin:0}.contact-band .eyebrow{color:var(--gold)}
.site-footer{background:#ebe7df;border-top:1px solid #d8d0c3;padding:52px 0 28px}.footer-main{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:48px}.footer-main>*{min-width:0}.footer-main h2{font-size:24px;margin-bottom:18px}.footer-main p,.footer-main a{font-size:15px;line-height:1.85;overflow-wrap:anywhere;hyphens:auto}.footer-main p{color:var(--soft)}.footer-brand img{margin-bottom:24px;width:113px;height:71px}.footer-main ul{list-style:none;margin:0;padding:0}.footer-main li a{display:inline-flex;align-items:center;max-width:100%;min-height:36px}.footer-main a{text-decoration:none}.footer-contact a{display:block;padding-block:8px}
.footer-projects{display:grid;grid-template-columns:repeat(4,minmax(0,125px));gap:24px;border-top:1px solid #d8d0c3;margin-top:36px;padding-top:32px}.footer-projects a{text-decoration:none;min-width:0}.footer-projects img{width:125px;height:125px;object-fit:contain;border:1px solid #cfc7ba;border-radius:5px;padding:5px;background:#fff;margin-bottom:10px}.footer-projects span{display:block;font:400 17px/1.5 Vegur,Arial,sans-serif;overflow-wrap:anywhere;hyphens:auto}
.footer-bottom{border-top:1px solid #d8d0c3;margin-top:32px;padding-top:24px;display:flex;justify-content:space-between;gap:24px;font-size:14px;color:#514b44}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:10px 20px}.footer-bottom nav a{min-height:32px}.creator-credit{font-size:14px;color:#514b44;border-top:1px solid #d8d0c3;margin-top:24px;padding-top:20px;overflow-wrap:anywhere}.creator-credit a{text-decoration:none}.creator-credit a:hover{text-decoration:underline}
.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;padding-block:30px;font-size:14px;color:var(--soft)}.breadcrumb a{text-decoration:none}.breadcrumb span[aria-hidden]{color:#756d61}
.page-header{padding-bottom:40px;border-bottom:1px solid var(--line);margin-bottom:40px}.page-header h1{margin-bottom:22px;max-width:900px}.page-header .lead{max-width:76ch}.page-header .text-link{margin:0}
.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:44px;align-items:start;padding-bottom:48px}.page-copy{min-width:0;width:100%;overflow-wrap:anywhere;hyphens:auto}.page-copy>h2{margin:40px 0 18px}.page-copy>h2:first-child{margin-top:0}.page-copy h3{margin:30px 0 14px}.page-copy p{margin-bottom:20px;color:var(--soft)}.page-copy li{margin-bottom:10px;color:var(--soft)}.page-copy blockquote{border-left:3px solid var(--gold-bright);padding-left:24px;margin:28px 0}.page-copy h2[id],.faq-section h2[id]{scroll-margin-top:32px}
.detail-image{margin:0 0 32px}.detail-image img{width:100%;height:auto;object-fit:contain;border-radius:6px}.detail-image figcaption{font-size:14px;color:var(--soft);margin-top:12px}
.side-box{padding:24px;border:1px solid var(--line);background:var(--pale);border-radius:7px;margin-bottom:24px;overflow-wrap:anywhere;hyphens:auto}.side-box h2{font-size:25px;margin-bottom:18px}.side-box p{font-size:15px;color:var(--soft)}.side-box ul{padding:0;margin:0;list-style:none}.side-box li a{display:block;min-height:44px;padding:11px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:15px}.side-box li:last-child a{border:0}.side-box li a[aria-current=page]{color:var(--gold);font-weight:700}.side-box .phone{display:inline-block;font-size:19px;font-weight:700;margin-top:18px;text-decoration:none}.side-box .button{width:100%;margin-top:20px;padding-inline:10px}
.note{padding:22px 26px;border-left:3px solid #b67511;background:#faf5eb;font-size:15px;overflow-wrap:anywhere}
.contents-nav{padding:24px 28px;margin-bottom:36px;background:var(--pale);border:1px solid var(--line);border-radius:7px}.contents-nav>p{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.contents-nav ul{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;padding-left:18px}.contents-nav li{font-size:15px;margin:0;line-height:1.7}.contents-nav a{text-decoration:none}
.faq-section{margin-top:40px}.faq-section>h2{margin-bottom:24px}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;list-style:none;position:relative;font-weight:600;font-size:16px;line-height:1.7;padding:22px 40px 22px 0;min-height:58px;overflow-wrap:anywhere}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';position:absolute;right:6px;top:19px;font-size:24px;color:var(--gold)}.faq-item[open] summary:after{content:'−'}.faq-answer{padding:0 18px 10px 0}.faq-answer p{color:var(--soft);font-size:16px;margin-bottom:18px}.home-questions .faq-section{margin-top:0;max-width:820px}
.related-links{padding:26px;background:var(--pale);border:1px solid var(--line);border-radius:7px;margin-top:40px}.related-links h2{font-size:25px;margin-bottom:18px}.related-links ul{padding-left:19px;margin:0}.related-links li{margin-bottom:12px}.related-links li:last-child{margin:0}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:44px}.contact-card{border:1px solid var(--line);background:var(--pale);border-radius:7px;padding:32px;min-width:0;overflow-wrap:anywhere;hyphens:auto}.contact-card h2{margin-bottom:24px}.contact-card address{font-style:normal;color:var(--soft)}.contact-method{display:block;padding:22px 0;border-bottom:1px solid var(--line);text-decoration:none}.contact-method small{display:block;font-size:14px;color:var(--soft);margin-bottom:4px}.contact-method strong{font-size:21px;font-weight:500;overflow-wrap:anywhere}.contact-card p{color:var(--soft)}.contact-card .button{margin-top:24px}.enquiry-list{padding-left:20px}.enquiry-list li{margin-bottom:14px}.contact-questions{max-width:820px;padding-bottom:44px}
.filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}.filter-button{min-height:46px;padding:10px 18px;background:#fff;border:1px solid #bcb4a8;border-radius:5px;font-size:15px}.filter-button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.filter-button:hover{border-color:var(--gold)}.gallery-summary{color:var(--soft);font-size:15px;margin-bottom:26px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px;margin-bottom:40px}.gallery-item{min-width:0}.gallery-item a{display:block;background:var(--pale);border:1px solid var(--line);padding:8px;border-radius:7px}.gallery-item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--pale)}.gallery-item figcaption{padding-top:12px;font-size:15px;color:var(--soft);overflow-wrap:anywhere;hyphens:auto}.gallery-copy{max-width:780px;padding-bottom:40px}.gallery-copy h2{margin:36px 0 18px}.gallery-copy p{color:var(--soft);margin-bottom:20px}
.lightbox{padding:0;border:1px solid #bcb4a8;border-radius:7px;max-width:min(1000px,calc(100vw - 24px));max-height:calc(100dvh - 24px);width:max-content;background:#fff;overflow:auto;box-shadow:0 15px 70px #0006}.lightbox::backdrop{background:#222d}.lightbox-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px}.lightbox-head p{font-size:15px;min-width:0}.lightbox button{min-width:44px;min-height:44px;border:1px solid #bcb4a8;background:#fff;border-radius:5px;font-size:20px}.lightbox img{width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 180px);margin:auto;object-fit:contain}.lightbox-foot{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:14px;flex-wrap:wrap}.lightbox-controls{display:flex;gap:10px}.lightbox-controls button{font-size:14px;padding:0 14px}
.prose{max-width:780px;padding-bottom:48px;overflow-wrap:anywhere;hyphens:auto}.prose h2{margin:40px 0 18px}.prose h3{margin:30px 0 14px}.prose p{color:var(--soft);margin-bottom:20px}.prose address{font-style:normal}.prose a{overflow-wrap:anywhere}.page-legal .prose,.page-legal .page-header,.page-legal .breadcrumb{max-width:780px;margin-inline:auto}.legal-note{font-size:15px;color:var(--soft);border-top:1px solid var(--line);padding-top:24px;margin-top:32px}
.region-list,.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.region-list a,.hub-card{display:block;border:1px solid var(--line);background:var(--pale);border-radius:7px;padding:28px;min-width:0;text-decoration:none;overflow-wrap:anywhere;hyphens:auto}.region-list span{display:block;color:var(--soft);font-size:15px;margin-top:10px}.hub-card h3{margin-bottom:16px}.hub-card p{font-size:16px;color:var(--soft)}.hub-card ul{margin-bottom:0}
.regional-page .page-copy>section:not(.faq-section):not(.related-links){margin-top:40px}.regional-page .page-copy>section:not(.faq-section):not(.related-links)>h2{margin-bottom:20px}.regional-page .page-copy>section>p{max-width:78ch;color:var(--soft);margin-bottom:20px}
.error-main{padding-block:64px 72px}.error-main h1{margin-bottom:24px}.error-number{font-size:72px;color:var(--gold);line-height:1.1;margin-bottom:24px}.original-copy img,.original-copy:empty{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1199px){
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:24px}.service-image{max-width:240px}
 .page-layout{grid-template-columns:1fr;gap:36px}.page-copy>p,.page-copy>ul,.page-copy>blockquote{max-width:78ch}.page-layout>aside{display:grid;grid-template-columns:1fr 1fr;gap:24px}.page-layout>aside .side-box{margin:0}.side-box ul{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.contact-band{display:block}.contact-band .button-row{margin-top:26px}.intro-grid{grid-template-columns:1fr}.intro-contact{display:none}.section-head{display:block}.section-head>p{max-width:76ch;margin-top:14px}
}
@media(max-width:1100px){
 .header-inner{min-height:104px;flex-wrap:wrap;gap:0}.brand{margin-block:16px}.header-phone{display:block;margin-left:auto;margin-right:20px;text-decoration:none;font-size:15px}.menu-toggle{display:block}.main-nav{margin:0;flex:1 0 100%;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:20px;gap:6px}.js .main-nav:not(.is-open){display:none}.main-nav>a{font-size:18px;line-height:1.5;min-height:48px;padding:11px 15px;white-space:normal;border-bottom:1px solid var(--line)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:24px}.service-image{max-width:240px}.footer-main{grid-template-columns:1fr 1fr;gap:36px}.footer-brand{grid-column:1/-1}.footer-brand p br:last-child{display:none}
}
@media(max-width:800px){
 :root{--gutter:32px;--outer:40px}h1{font-size:36px}.home-hero{padding-top:32px}.intro{padding-block:40px}.section{padding-block:40px}.page-header{padding-bottom:32px;margin-bottom:32px}.page-header .lead{font-size:17px}.breadcrumb{padding-block:26px}.featured-work,.gallery-grid{gap:24px 20px}.contact-layout,.project-teaser{grid-template-columns:1fr}.secondary-services,.process-list{grid-template-columns:1fr;gap:30px}.footer-main{gap:32px}.footer-bottom{display:block}.footer-bottom nav{margin-top:16px}.page-layout>aside{grid-template-columns:1fr}.side-box{padding:28px}.contents-nav{padding:24px}.region-list,.hub-grid{gap:20px}.region-list a,.hub-card{padding:24px}
}
@media(max-width:640px){
 .regional-page .page-copy>section:not(.faq-section):not(.related-links){margin-top:32px}
 :root{--gutter:24px;--outer:24px}body{padding-bottom:var(--contact-bar-height,calc(70px + env(safe-area-inset-bottom)))}h1{font-size:32px}h2{font-size:27px}h3{font-size:24px}
 .header-inner{min-height:92px;padding-inline:12px}.brand{flex-basis:91px;margin-block:10px}.brand img{width:91px;height:auto}.header-phone{font-size:13px;margin-right:12px}.menu-toggle{font-size:14px;padding-inline:12px}.main-nav{padding-top:8px;padding-bottom:16px}.main-nav>a{font-size:17px}
 main.wrap,.page-home main{margin-top:16px;border-radius:7px}.home-hero{padding-top:24px}.hero-caption{padding:18px;gap:14px;align-items:start}.hero-caption strong{font-size:23px}.hero-caption span{font-size:13px}.hero-caption a{font-size:14px}.hero-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-tab{min-height:50px;padding:13px 8px;font-size:18px}.hero-tab:nth-child(2){border-right:0}.hero-tab:nth-child(n+3){border-top:1px solid var(--line)}
 .intro{padding-block:34px 38px}.intro h1{margin-bottom:20px}.intro .lead,.lead{font-size:16px}.eyebrow{font-size:11px;letter-spacing:.075em}.button-row{margin-top:24px;gap:12px}.button{padding:12px 18px}.section{padding-block:34px 38px}.section-head{margin-bottom:24px}.section-head>p{font-size:16px}.service-grid{gap:20px 16px}.service-card{padding:16px}.service-card h3{font-size:24px;margin-top:18px}.service-card p{font-size:15px}.more-services{gap:4px 18px;padding-top:20px;margin-top:24px}.featured-work{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.featured-work figcaption{font-size:14px}.project-teaser{padding:24px;gap:24px}.region-links{gap:10px}.region-links a{padding:10px 14px;font-size:15px}
 .breadcrumb{font-size:13px;padding-block:24px;gap:8px}.page-header h1{margin-bottom:20px}.page-header .lead{font-size:16px}.page-layout{gap:28px;padding-bottom:36px}.page-copy>h2{margin-top:32px}.contents-nav ul{grid-template-columns:1fr;gap:12px}.contents-nav{padding:20px;margin-bottom:30px}.contents-nav li{font-size:15px}.side-box{padding:24px}.side-box ul{grid-template-columns:1fr}.side-box li a{font-size:16px}.faq-section{margin-top:32px}.faq-item summary{padding-block:20px}.faq-answer{padding-right:0}.related-links{padding:24px}.note{padding:20px 22px}
 .contact-layout{gap:24px;margin-bottom:32px}.contact-card{padding:24px}.contact-method strong{font-size:19px}.contact-band{padding-block:38px}.contact-band .button-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-band .button{padding-inline:10px}.contact-questions{padding-bottom:36px}
 .site-footer{padding-block:38px 26px}.footer-main{grid-template-columns:1fr;gap:30px}.footer-brand{grid-column:auto}.footer-brand img{margin-bottom:20px}.footer-main h2{margin-bottom:14px}.footer-main p,.footer-main a{font-size:15px}.footer-projects{grid-template-columns:repeat(2,minmax(0,125px));gap:22px 20px}.footer-projects img{width:100%;height:auto;aspect-ratio:1}.footer-bottom{font-size:14px}.footer-bottom nav{gap:10px 20px}.creator-credit{font-size:14px;line-height:1.8}.creator-credit span{display:block}
 .mobile-contact{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:fixed;bottom:0;left:0;right:0;z-index:25;padding:10px 16px max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #d8d0c3}.mobile-contact a{display:flex;justify-content:center;align-items:center;min-height:48px;border-radius:5px;font-size:15px;background:var(--ink);color:#fff;text-decoration:none}.mobile-contact a:last-child{background:#fff;color:var(--ink);border:1px solid #bcb4a8}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.gallery-item a{padding:5px}.gallery-item figcaption{font-size:14px}.filter-bar{gap:10px}.filter-button{font-size:14px;padding-inline:14px}.lightbox-head{padding:10px 12px}.lightbox-head p{font-size:14px}.lightbox img{max-height:calc(100dvh - 210px)}.lightbox-foot{padding:12px}.region-list,.hub-grid{grid-template-columns:1fr}.prose{padding-bottom:36px}.prose h2{margin-top:32px}.error-main{padding-block:40px 48px}
}
@media(max-width:480px){.service-grid{grid-template-columns:1fr}.service-card{padding:22px}.service-image{max-width:240px}.service-card p{font-size:16px}.hero-caption{display:block}.hero-caption a{margin-top:6px}.featured-work{grid-template-columns:1fr}.featured-work figcaption,.gallery-item figcaption{font-size:15px}.hero-tab{font-size:16px}}
@media(max-width:360px){:root{--gutter:20px;--outer:20px}h1{font-size:30px}.header-inner{padding-inline:8px}.brand{flex-basis:80px}.brand img{width:80px}.header-phone{font-size:12px;margin-right:8px}.menu-toggle{padding-inline:10px}.contact-card,.side-box,.hub-card,.related-links{padding:20px}.contact-method strong{font-size:17px}.contact-band .button-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{body{padding:0;background:#fff;font-size:11pt}.wrap,.page-home main{width:100%;padding-inline:0}main.wrap,.page-home main{margin-top:0;border:0}.main-nav,.header-phone,.menu-toggle,.mobile-contact,.home-hero,.button-row,.site-footer,.filter-bar,.lightbox,.skip,.contents-nav{display:none!important}.page-layout,.contact-layout,.process-list,.hub-grid,.intro-grid{display:block}.page-layout>aside,.intro-contact{display:none}.section{padding-block:20px}.gallery-item,.project-teaser,.faq-item{break-inside:avoid}.faq-answer{display:block!important}a{color:#000;text-decoration:none}.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media print{details::details-content{display:block!important;content-visibility:visible!important}}
