/* Shared compact public layout. No private portal selectors. */
header .site-menu .menu-panel{left:auto;right:0;width:min(420px,100%);grid-template-columns:1fr;padding:16px;gap:0}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.6}h1,h2,h3,summary{font-family:inherit}section{padding:48px 0}h1{letter-spacing:-.045em}h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.025em}.page-content{padding:40px 0 48px}.page-content h1{font-size:clamp(32px,5vw,52px)}.page-content h2{font-size:26px;margin-top:28px}.page-content p{margin:12px 0}.page-content .lead,.lead{color:#435563;font-size:19px}.breadcrumb{margin-bottom:18px}.site-navigation{height:86px}.site-navigation>.site-menu{margin-left:auto}.site-navigation .brand-logo{width:220px;height:auto}.site-menu .menu-panel{left:auto;right:0;width:min(420px,100%);grid-template-columns:1fr;padding:16px;gap:0}.product-menu{padding:0 12px 8px;border:0}.product-menu>summary{padding:8px 0;font-size:14px}.product-links{display:grid;padding-left:14px;border-left:2px solid var(--sun)}.product-links a{font-size:15px}.hero{padding:44px 0}.hero-grid{gap:40px;grid-template-columns:1.1fr .9fr}.hero h1{font-size:clamp(36px,4.5vw,62px);margin:14px 0 20px}.hero-project{display:block;width:100%;height:390px;object-fit:cover;border-radius:8px}.hero-actions{margin-top:24px}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.category{position:relative;background:#f7f5ef;border:1px solid var(--line);border-radius:8px;padding:24px 18px}.category h3{font-size:21px;margin:0 0 8px}.category p{margin:0;padding-right:16px;color:#435563}.category>span{display:block;margin-top:12px;font-size:24px}.category:hover{border-color:#071d33}.benefits{padding:32px 0}.benefits ul,.process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;list-style:none}.benefits strong,.process strong{display:block;font-size:20px}.benefits span{display:block;color:#435563}.process ol{counter-reset:step}.process li::before{counter-increment:step;content:'0' counter(step);display:block;color:#6b521b;font-weight:700;margin-bottom:10px}.photo-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.photo-project,.photo-project.wide{grid-row:auto;padding:0;border:0;background:transparent}.photo-project .project-photo,.photo-project.wide .project-photo,.project-photo-pair .project-photo{height:260px;min-height:0;object-fit:cover;border-radius:6px}.project-photo-pair{display:block}.photo-project h3{font-size:19px}.photo-project p{font-size:15px}.review-compact{display:flex;align-items:center;justify-content:space-between;gap:24px}.review-compact h2{margin-bottom:12px}.review-compact p{margin:8px 0}.review-compact p a{text-decoration:underline}.booking .section-head{max-width:900px;margin:0 auto 24px}.booking .section-head h2{font-size:34px}.booking .section-head p a{color:white;text-decoration:underline}.booking .section-head p{max-width:450px}.callback-planner{box-shadow:none;border-radius:8px}.optional-fields{margin-top:16px}.optional-fields>summary{font-size:16px;padding:12px 0}.optional-fields .fields{padding:8px 0 16px}.form .notice{padding:0;background:transparent;border:0;margin-top:0}.form .field:has(#consent){display:block}.form .field:has(#consent) label{font-weight:400}.contact-options{display:flex;flex-wrap:wrap;gap:12px}.page-action{margin-top:24px!important}.footer-pages{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}.footer-pages a,.legal-links a{min-height:44px;display:flex;align-items:center}.footer-brand{display:inline-block}.footer-contact{max-width:100%}.footer-contact a{overflow-wrap:anywhere}.page-content .directory{gap:12px}.directory a{padding:18px;min-height:56px}.price-note li{margin:10px 0}.page-content nav.price-nav{display:flex;flex-wrap:wrap;gap:8px}.page-content .price-nav a{min-height:44px;border-radius:6px;padding:8px 12px;font-size:14px;flex:0 1 auto}.photo-dropzone{padding:16px!important}.page-content>img,.page-content>a>img{max-height:480px;object-fit:cover;border-radius:6px}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;gap:24px}.hero-project{height:280px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-guide{grid-template-columns:repeat(2,minmax(0,1fr))}.review-compact{display:block}.benefits ul,.process ol{gap:18px}.site-navigation .brand-logo{width:180px}}
@media(max-width:560px){section{padding:32px 0}.hero{padding:28px 0}.hero h1{font-size:clamp(34px,9vw,44px)}.hero .eyebrow{font-size:11px;letter-spacing:.08em}.hero .lead{font-size:18px}.hero-project{height:230px}.hero-actions{gap:10px}.hero-actions .btn{flex:1;padding:12px;font-size:15px;text-align:center}.category{padding:18px 12px}.category h3{font-size:18px}.category p{font-size:15px}.benefits ul,.process ol{grid-template-columns:1fr;gap:16px}.benefits strong,.process strong{font-size:18px}.process li::before{float:left;margin:0 14px 20px 0}.photo-guide{grid-template-columns:1fr}.photo-project .project-photo,.photo-project.wide .project-photo{height:230px}.section-head{margin-bottom:20px}.section-head h2,.booking .section-head h2{font-size:29px}.section-head a{display:inline-block;margin-top:12px}.page-content{padding-top:28px}.page-content h2{font-size:24px}.site-navigation{height:74px}.footer-pages{gap:4px 18px}.mobile-contact{display:grid;grid-template-columns:1fr 1.6fr;padding:6px 12px calc(6px + env(safe-area-inset-bottom));gap:10px}.mobile-contact a,.mobile-contact a:last-child{justify-content:center;max-width:none;min-height:44px;font-size:14px;line-height:1.3}.mobile-contact a:last-child{background:var(--sun);color:var(--ink);border-radius:4px}main{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.page-content .price-nav a{flex:1 1 44%;text-align:left;font-size:13px}.price-table thead th:first-child{width:59%}.price-table th,.price-table td{padding:10px 8px;font-size:14px}.footer-contact{flex-direction:column}.contact-options .btn{width:100%}}
