@font-face{font-family:Fixup;src:url('/assets/display.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--ink:#23142c;--paper:#fffaf1;--orange:#ff663f;--violet:#b8a6ff;--line:#d5cec8;--muted:#635c65;--white:#fff;--font:Fixup,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:17px;line-height:1.55}h1,h2,h3,h4,p{margin:0}h1,h2,h3,.display{font-family:var(--font);font-weight:750;line-height:1.03;letter-spacing:-.045em}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,input,textarea{font:inherit}a,button,input,textarea,summary{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #5333cb;outline-offset:5px}button{cursor:pointer}.wrap{max-width:1360px;margin:auto;padding:0 5%}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:750;display:block;line-height:1.5}.muted{color:var(--muted)}.skip{position:fixed;top:-100px;left:16px;background:var(--ink);color:var(--white);padding:12px;z-index:99}.skip:focus{top:8px}.draft-bar{background:var(--ink);color:#fff;font-size:13px;text-align:center;padding:7px 14px}.draft-bar a{color:#fff}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav{display:flex;align-items:center;gap:32px;min-height:96px}.wordmark{text-decoration:none;display:block;line-height:.8;min-width:138px}.wordmark b{font-family:var(--font);font-weight:850;font-size:49px;letter-spacing:-.08em}.wordmark b i{color:var(--orange);font-style:normal}.wordmark small{display:block;font-size:9px;font-weight:800;letter-spacing:.31em;line-height:1.8;margin-top:7px}.nav-links{display:flex;align-items:center;justify-content:center;gap:27px;margin-left:auto}.nav-links>a{font-size:14px;font-weight:600;text-decoration:none}.nav-links>a:hover,.nav-links>a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:3px;text-underline-offset:8px}.button{display:inline-flex;justify-content:center;align-items:center;gap:26px;border:1.5px solid var(--ink);padding:15px 23px;background:var(--ink);color:white;text-decoration:none;font-size:15px;font-weight:700;line-height:1.3;border-radius:5px;min-height:52px;transition:transform .18s,background .18s}.button svg{width:20px;height:20px}.button:hover{transform:translateY(-3px);background:#3d2c47}.button.orange{background:var(--orange);color:var(--ink)}.button.orange:hover{background:#ff7d5a}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:#efe7e3}.nav-cta{margin-left:15px}.menu-toggle{display:none}.hero{padding:59px 0 42px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.16fr 1fr;gap:50px;align-items:center}.hero .eyebrow{display:flex;align-items:center;gap:12px}.eyebrow .dash{width:32px;height:2px;background:currentColor}.hero h1{font-size:clamp(65px,6.75vw,98px);margin:24px 0 24px;line-height:.97;max-width:660px;letter-spacing:-.06em}.hero h1 em{font-style:normal;color:#c44125}.hero-copy>p{max-width:430px;font-size:18px;color:#4f4652;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:25px;margin:29px 0}.text-link{font-size:15px;font-weight:700;display:inline-flex;align-items:center;gap:13px}.text-link svg{width:20px}.hero-note{font-size:13px;display:flex;align-items:center;gap:8px;color:var(--muted)}.hero-note svg{width:18px;height:18px}.portrait-stage{background:var(--violet);position:relative;height:535px;border-radius:220px 220px 10px 10px;isolation:isolate;display:flex;align-items:flex-end;justify-content:center;margin-top:12px}.portrait-stage:before{content:'';position:absolute;width:365px;height:365px;border:1px solid var(--ink);border-radius:50%;top:72px;left:-28px;z-index:-1}.portrait-stage:after{content:'';position:absolute;width:210px;height:210px;background:var(--orange);border-radius:50%;right:-55px;top:4px;z-index:-1}.portrait-stage img{width:100%;height:100%;object-fit:contain;object-position:bottom;position:relative;z-index:1}.portrait-stage.original img{object-fit:cover;object-position:50% 68%;border-radius:220px 220px 10px 10px;mix-blend-mode:multiply}.portrait-tag{position:absolute;z-index:2;bottom:23px;left:-24px;background:var(--paper);border:1.5px solid var(--ink);border-radius:5px;padding:15px 25px;transform:rotate(-4deg);box-shadow:5px 5px 0 var(--ink)}.portrait-tag strong{font-family:var(--font);font-size:22px;display:block;line-height:1.2}.portrait-tag span{font-size:12px;letter-spacing:.04em}.portrait-caption{text-align:right;font-size:12px;margin-top:14px;color:var(--muted)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:51px;padding-top:20px;font-size:13px;gap:20px}.hero-bottom>span{max-width:480px}.stars{letter-spacing:2px;color:#b53a21;white-space:nowrap}.hero-bottom a{text-decoration:none}.service-ribbon{background:var(--orange);padding:22px 0;border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink)}.ribbon-row{display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:var(--font);font-size:clamp(18px,2vw,26px);font-weight:700;letter-spacing:-.025em}.ribbon-row svg{height:24px;width:24px;flex-shrink:0}.section{padding:95px 0}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin:18px 0 42px}.section h2{font-size:clamp(38px,4vw,58px);max-width:730px}.section-heading p{max-width:350px;color:var(--muted);font-size:16px}.services-list{border-top:1px solid var(--ink)}.service-row{display:grid;grid-template-columns:70px 1fr 1fr 46px;gap:25px;align-items:center;border-bottom:1px solid var(--line);padding:30px 0;text-decoration:none}.service-row:hover h3{color:#bc3e23}.service-row .number{font-size:14px;font-family:var(--font)}.service-row h3{font-size:30px;letter-spacing:-.035em;line-height:1.13}.service-row p{font-size:16px;color:var(--muted);max-width:370px}.circle-link{border:1px solid var(--ink);height:44px;width:44px;display:grid;place-items:center;border-radius:50%}.circle-link svg{height:20px;width:20px}.scope-note{border-left:3px solid var(--orange);padding:10px 18px;font-size:14px;color:#594c5e;margin-top:28px;max-width:850px}.about{background:var(--ink);color:var(--paper);overflow:hidden}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{font-size:clamp(46px,5vw,72px);margin:20px 0 28px}.about h2 em{font-style:normal;color:var(--violet)}.about p{color:#ddd1e0;font-size:18px;max-width:540px}.about .text-link{color:var(--paper);margin-top:25px}.about-facts{border-top:1px solid #78657f;align-self:center}.fact{padding:24px 0;border-bottom:1px solid #78657f;display:flex;align-items:flex-start;gap:20px}.fact svg{width:28px;height:28px;flex-shrink:0;color:var(--violet)}.fact h3{font-size:23px;line-height:1.2;letter-spacing:-.025em}.fact p{font-size:14px;margin-top:7px;line-height:1.6;color:#d0c3d5}.fact a{color:inherit}.work-panel{border:1.5px solid var(--ink);border-radius:6px;display:grid;grid-template-columns:1.15fr 1fr;min-height:330px;overflow:hidden}.work-graphic{background:var(--violet);display:flex;align-items:center;justify-content:center;padding:35px;border-right:1px solid var(--ink);position:relative;overflow:hidden}.tile-grid{width:240px;height:240px;display:grid;grid-template-columns:1fr 1fr;gap:10px;transform:rotate(-8deg)}.tile-grid span{border:1.5px solid var(--ink);background:var(--paper);border-radius:2px}.tile-grid span:nth-child(2){background:var(--orange);border-radius:2px 80px 2px 2px}.tile-grid span:nth-child(3){background:var(--ink);border-radius:2px 2px 2px 80px}.work-content{padding:48px;align-self:center}.work-content h3{font-size:34px;margin-bottom:17px}.work-content p{color:var(--muted);font-size:16px;margin-bottom:25px}.work-content .eyebrow{margin-bottom:17px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review{border:1px solid var(--line);padding:30px;border-radius:5px;background:#fffdf8;display:flex;flex-direction:column;min-height:263px}.review blockquote{margin:25px 0 30px;font-family:var(--font);font-size:26px;line-height:1.23;letter-spacing:-.025em}.review footer{margin-top:auto;font-size:14px;font-weight:700}.review footer span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:3px}.review-meta{font-size:13px;color:var(--muted);margin-top:23px}.area-section{background:var(--violet)}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.area-grid h2{margin:22px 0}.area-grid p{max-width:490px}.suburbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.suburbs span{font-size:13px;border:1px solid #675682;border-radius:24px;padding:7px 13px}.map-figure{margin:0;background:var(--paper);border:1px solid var(--ink);padding:20px;border-radius:140px 140px 5px 5px;max-width:480px}.map-figure svg{width:100%;height:auto}.map-figure figcaption{font-size:12px;text-align:center;color:var(--muted);max-width:330px;margin:auto}.cta{padding:75px 0;background:var(--orange)}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font-size:clamp(38px,4.5vw,64px);max-width:640px}.cta p{margin-top:15px}.cta .button{flex-shrink:0}.site-footer{background:var(--ink);color:var(--paper);padding:60px 0 22px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:35px}.site-footer .wordmark{margin-bottom:25px}.site-footer p,.site-footer li{font-size:14px;color:#dfd4e2}.site-footer ul{list-style:none;margin:16px 0;padding:0;display:grid;gap:10px}.site-footer h2{font-size:13px;font-family:Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline}.license-line{font-size:13px;margin-top:40px;border-top:1px solid #67556c;padding:22px 0 0}.footer-bottom{font-size:12px;color:#c6b8cc;display:flex;justify-content:space-between;margin-top:20px;gap:25px}.page-intro{padding:65px 0 55px}.page-intro h1{font-size:clamp(48px,6vw,82px);max-width:900px;margin:22px 0}.page-intro p{max-width:650px;font-size:19px;color:var(--muted)}.page-intro .eyebrow a{text-decoration:none}.page-intro+.section{padding-top:10px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.detail-grid h2{font-size:37px;margin-bottom:20px}.detail-grid p{margin-bottom:18px}.detail-grid ul{padding-left:20px}.detail-grid li{margin-bottom:10px}.service-detail{padding:35px;border:1px solid var(--line);border-radius:5px}.service-detail h2{font-size:31px;margin:15px 0 20px}.service-detail p{font-size:16px;color:var(--muted)}.service-detail .button{margin-top:25px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px}.step{padding-top:25px;border-top:1px solid var(--ink)}.step .number{font-family:var(--font);font-size:48px;color:#a33721}.step h3{font-size:25px;margin:20px 0 15px}.step p{font-size:16px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.8fr 1.3fr;gap:75px}.contact-aside h2{font-size:34px;margin-bottom:20px}.contact-aside p{font-size:16px;margin-bottom:24px}.contact-big{font-family:var(--font);font-size:33px;display:block;letter-spacing:-.035em;margin-bottom:10px}.contact-aside .email-link{font-size:16px;overflow-wrap:anywhere}.contact-aside .callout{padding:25px;background:var(--violet);margin-top:30px;border-radius:5px}.contact-aside .callout h3{font-size:24px;margin-bottom:12px}.contact-aside .callout p{margin:0;font-size:15px}.quote-form{background:#fffdf8;border:1px solid var(--line);border-radius:7px;padding:36px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:22px}.field label,legend{font-size:14px;font-weight:700;display:block;margin-bottom:9px}.field label span{font-weight:400;color:var(--muted)}input[type=text],input[type=tel],input[type=email],textarea{width:100%;background:#fff;border:1px solid #918692;border-radius:4px;padding:12px 13px;color:var(--ink);min-height:49px}textarea{resize:vertical;min-height:132px}fieldset{padding:0;border:0;margin:0 0 25px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:11px}.choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:5px;padding:12px;font-size:14px;cursor:pointer}.choice:has(input:checked){background:#eee8ff;border-color:#6b4bbb}.choice input,.consent input{width:18px;height:18px;accent-color:#5235a3;flex-shrink:0}.consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;margin:23px 0}.consent input{margin-top:3px}.form-help{font-size:13px;color:var(--muted);margin:6px 0}.quote-form .button{width:100%}.form-status{padding:15px;border:1px solid;border-radius:5px;margin:15px 0;font-size:15px}.form-status:empty{display:none}.form-status.error{background:#fff0eb;color:#84260d}.form-status.success{background:#e9f3e8;color:#245222}.field-error{font-size:13px;color:#992c14;margin-top:6px}.field-error:empty{display:none}[aria-invalid=true]{border-color:#aa3016!important}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.legal{max-width:840px;padding-bottom:90px}.legal h2{font-size:29px;line-height:1.2;margin:38px 0 16px}.legal p,.legal ul{margin-bottom:20px}.legal li{margin-bottom:9px}.legal table{border-collapse:collapse;font-size:15px;width:100%;margin:25px 0}.legal th,.legal td{padding:15px;border:1px solid var(--line);text-align:left;vertical-align:top}.legal .scroll-table{overflow-x:auto}.notice{background:#eee7ff;border-left:3px solid #694bae;padding:18px 22px;font-size:15px;margin:20px 0}.review-hero{background:var(--violet);padding:50px;border:1px solid var(--ink);border-radius:6px;margin-bottom:30px;display:flex;align-items:center;gap:50px}.rating-number{font-family:var(--font);font-size:110px;line-height:1}.review-hero h2{font-size:35px;margin-bottom:12px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.project img{width:100%;height:auto}.project figcaption{padding:15px 0}.project figure{margin:0}.no-script{padding:15px;background:#eee7ff}.mobile-call{display:none}.reveal{animation:enter .6s ease both}@keyframes enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
.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}
@media(min-width:1500px){.wrap{padding-left:30px;padding-right:30px}}
@media(max-width:1100px){.nav{gap:15px}.nav-links{gap:17px}.nav-cta{padding:13px 15px;margin-left:5px}.hero-grid{gap:38px}.hero h1{font-size:73px}.portrait-stage{height:495px}.hero-actions{gap:17px}.hero-actions .button{padding:15px 19px}.hero-actions .text-link{font-size:14px}.contact-grid{gap:40px}}
@media(max-width:850px){.nav{min-height:81px;justify-content:space-between}.wordmark b{font-size:43px}.wordmark small{font-size:8px}.menu-toggle{display:flex;align-items:center;gap:10px;background:none;border:1px solid var(--ink);border-radius:4px;padding:10px 14px;min-height:44px;font-size:14px}.menu-toggle svg{width:20px;height:20px}.nav-cta{display:none}.nav-links{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--ink);padding:25px 5%;align-items:flex-start;flex-direction:column;gap:22px}.nav-links.open{display:flex}.nav-links a{font-size:17px}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:60px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.portrait-stage{height:430px}.portrait-stage:after{width:150px;height:150px;right:-20px}.portrait-stage:before{width:260px;height:260px}.portrait-tag{left:-13px;padding:12px 18px}.portrait-tag strong{font-size:18px}.hero-bottom{margin-top:35px}.about-layout,.area-grid{gap:40px}.section{padding:70px 0}.service-row{grid-template-columns:40px 1fr 1fr 40px;gap:15px}.service-row h3{font-size:25px}.service-row p{font-size:14px}.review-grid{gap:12px}.review{padding:23px}.review blockquote{font-size:22px}.work-content{padding:30px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-brand{grid-column:1/-1}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-aside .callout{max-width:560px}.contact-big{font-size:35px}.detail-grid{gap:25px}.service-detail{padding:25px}.section-heading{gap:30px}}
@media(max-width:600px){.wrap{padding:0 6%}.draft-bar{font-size:12px}.hero{padding:35px 0 27px}.hero-grid{grid-template-columns:1fr;gap:25px}.hero h1{font-size:clamp(56px,15vw,79px);margin:20px 0;max-width:420px}.hero-copy>p{max-width:420px;font-size:17px}.hero .eyebrow{font-size:11px}.hero-actions{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap;margin:24px 0 19px}.hero-note{font-size:12px}.portrait-wrap{margin:0 14px 0 20px}.portrait-stage{height:420px;max-width:390px;margin:10px auto 0}.portrait-stage:after{width:170px;height:170px;right:-20px}.portrait-stage:before{width:290px;height:290px;left:-20px}.portrait-tag{bottom:24px;left:-18px}.portrait-tag strong{font-size:21px}.portrait-caption{font-size:11px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:12px;margin-top:25px}.hero-bottom>span{font-size:12px}.service-ribbon{padding:17px 0}.ribbon-row{gap:14px;flex-wrap:wrap;justify-content:center;font-size:17px}.ribbon-row svg{width:17px;height:17px}.ribbon-row .desktop-ribbon{display:none}.section{padding:58px 0}.section-heading{display:block;margin:16px 0 30px}.section h2{font-size:40px}.section-heading p{margin-top:18px;max-width:440px}.section-heading .text-link{margin-top:20px}.service-row{grid-template-columns:28px 1fr 38px;gap:11px;padding:25px 0}.service-row h3{font-size:26px}.service-row p{grid-column:2/3;font-size:15px;max-width:100%}.service-row .circle-link{grid-column:3;grid-row:1/3;width:37px;height:37px}.service-row .number{grid-row:1;align-self:start;margin-top:5px}.scope-note{font-size:13px;padding:9px 15px}.about-layout,.area-grid,.detail-grid{grid-template-columns:1fr;gap:35px}.about h2{font-size:49px}.about p{font-size:17px}.fact{padding:22px 0}.work-panel{grid-template-columns:1fr}.work-graphic{border-right:0;border-bottom:1px solid var(--ink);min-height:260px}.tile-grid{height:185px;width:185px}.work-content{padding:30px}.work-content h3{font-size:31px}.review-grid{grid-template-columns:1fr;gap:15px}.review{min-height:0;padding:25px}.review blockquote{font-size:27px;margin:20px 0 25px}.map-figure{max-width:100%;border-radius:120px 120px 5px 5px}.cta{padding:50px 0}.cta .wrap{display:block}.cta h2{font-size:44px}.cta .button{margin-top:27px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:12px}.site-footer{padding-bottom:85px}.license-line{font-size:12px}.page-intro{padding:40px 0}.page-intro h1{font-size:54px}.page-intro p{font-size:18px}.steps{grid-template-columns:1fr;gap:25px}.step{display:grid;grid-template-columns:45px 1fr;gap:15px}.step .number{font-size:35px;grid-row:1/3}.step h3{margin:0;font-size:26px}.step p{grid-column:2}.quote-form{padding:24px 18px}.form-row{grid-template-columns:1fr;gap:0}.choices{grid-template-columns:1fr}.choice{min-height:49px}.contact-big{font-size:32px}.legal h2{font-size:26px}.legal table{min-width:560px}.review-hero{padding:28px;display:block}.rating-number{font-size:90px}.review-hero h2{font-size:28px;margin-top:20px}.mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--ink);z-index:30;border-top:1px solid #8b7f91;min-height:57px;padding-bottom:env(safe-area-inset-bottom)}.mobile-call a{display:flex;justify-content:center;align-items:center;gap:9px;flex:1;text-decoration:none;font-weight:700;font-size:14px;color:#fff}.mobile-call a:last-child{background:var(--orange);color:var(--ink)}.mobile-call svg{width:18px;height:18px}.gallery{grid-template-columns:1fr}}


/* Black and gold direction. Component structure is shared; each page keeps its own layout. */
@font-face{font-family:FixupBlackletter;src:url('/assets/pirata.woff2') format('woff2');font-display:swap;font-weight:400}
:root{--ink:#191918;--paper:#f8f3e8;--orange:#dab66d;--violet:#ded0af;--line:#d3c8b4;--muted:#635e54;--white:#fff;--font:Arial,sans-serif}
body{font-family:Arial,sans-serif}h1,h2,h3,h4,.display{font-family:Arial,sans-serif;font-weight:700;letter-spacing:-.04em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #bd8c32;outline-offset:4px}.draft-bar{background:#070707;color:#d0c8b9;font-size:12px;letter-spacing:.01em}.site-header{background:#1a1a19;border-bottom:1px solid #806536;color:#fff}.nav{min-height:87px;gap:22px;max-width:1480px}.wordmark{display:flex;flex-direction:column;align-items:center;min-width:84px;width:max-content}.wordmark b{font-family:FixupBlackletter,Georgia,serif;letter-spacing:-.08em;font-size:34px;color:#e3c27b;font-weight:400;line-height:.95}.wordmark b span{margin-left:2px}.wordmark small{font-size:7px;letter-spacing:.1em;margin-top:7px;line-height:1.3}.nav-links{justify-content:space-evenly;flex:1;gap:18px;margin-left:0}.nav-links>a{font-size:14px;white-space:nowrap;font-weight:500;padding:9px 0}.nav-links>a:hover,.nav-links>a[aria-current=page]{text-decoration-color:#e7c878;text-underline-offset:13px}.button{border-radius:0;padding:15px 23px;border:1px solid #866c3b;background:#1a1a19;color:#fff;min-height:52px;transition:background .2s,color .2s;gap:17px}.button:hover{transform:none;background:#33302a}.button.orange{background:linear-gradient(115deg,#ddbc74 0%,#f3d795 45%,#c2994d 100%);color:#171717;border-color:#e7c97c;box-shadow:inset 0 0 0 3px #f7e1a855,inset 0 0 0 4px #7c582a66}.button.orange:hover{background:#eacd89}.button.outline{background:var(--ink);color:white;border-color:#d1b475}.button.outline:hover{background:#38332a}.nav-cta{margin:0;font-size:15px;padding:13px 22px}.nav-cta svg{display:none}
.hero-master{height:810px;position:relative;isolation:isolate;overflow:hidden;background:#f7f2e7}.hero-scenes{position:absolute;inset:195px 0 0;display:grid;grid-template-columns:1fr 1fr;z-index:-1}.renovation-scene{position:relative;overflow:hidden;background:#f7f2e7}.material-grid{position:absolute;inset:290px 0 0;background-color:#222322;background-image:linear-gradient(90deg,transparent calc(100% - 1px),#8d7c5c77 0),linear-gradient(0deg,transparent calc(100% - 1px),#8d7c5c77 0),linear-gradient(125deg,#191b1a,#3a3a3433 45%,#111 100%);background-size:145px 125px,145px 125px,100% 100%;border-top:1px solid #988257}.material-grid:before{content:'';position:absolute;inset:0;background:linear-gradient(20deg,transparent 25%,#e8e2cb15 25.1%,transparent 25.2%,transparent 65%,#e8e2cb13 65.2%,transparent 65.5%);opacity:.6}.material-caption{position:absolute;left:8%;bottom:35px;font-size:10px;letter-spacing:.2em;color:#e3cd99;writing-mode:vertical-rl;transform:rotate(180deg)}.coast-scene{position:relative;border-left:1px solid #bf934a;overflow:hidden}.coast-scene img{width:100%;height:100%;object-fit:cover;object-position:55% 60%;filter:saturate(.7) sepia(.12)}.coast-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(#f7f2e7 0%,#f7f2e788 10%,transparent 45%,#0c100f99 100%)}.hero-title-wrap{position:relative;z-index:5;margin:0 auto;padding:20px 3.7% 0;max-width:1700px}.title-rule{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;letter-spacing:.23em;color:#8e6a2c;margin-bottom:10px}.hero-title{font-family:FixupBlackletter,Georgia,serif;font-size:clamp(76px,9.4vw,153px);line-height:1.05;font-weight:400;letter-spacing:-.018em;text-align:center;white-space:nowrap;margin:0;text-shadow:1px 1px 0 #f8e4b0,2px 2px 0 #cfab60,3px 3px 0 #695124,4px 5px 0 #f0d594,6px 7px 0 #171513,8px 11px 9px #19191655;-webkit-text-stroke:.55px #ad843d}.hero-title-rule{height:1px;background:linear-gradient(90deg,transparent,#a67a31 10%,#a67a31 90%,transparent);margin:25px 0 0}.hero-description{position:absolute;z-index:6;top:275px;left:max(6%,calc((100% - 1320px)/2));max-width:330px;width:28%}.hero-kicker{font-size:25px;font-weight:600;line-height:1.3;letter-spacing:-.035em}.hero-description>p:nth-child(2){font-size:16px;line-height:1.5;margin:17px 0 23px;color:#4f483e}.hero-buttons{display:flex;flex-wrap:wrap;gap:10px}.hero-buttons .button{font-size:13px;padding:14px 15px;min-height:48px}.hero-buttons svg{width:15px}.hero-licence{margin-top:24px;border-top:1px solid #ae9871;padding-top:13px;font-size:12px;line-height:1.4;display:flex;flex-wrap:wrap;gap:2px 8px}.hero-licence strong{font-size:12px;font-weight:600}.hero-licence small{flex-basis:100%;font-size:11px}.hero-person{position:absolute;bottom:0;left:53%;width:min(46%,620px);height:620px;transform:translateX(-50%);z-index:4;pointer-events:none;filter:drop-shadow(14px 10px 18px #0006)}.hero-person img{width:100%;height:100%;display:block;object-fit:contain;object-position:center bottom}.hero-person-label{position:absolute;z-index:7;left:53%;transform:translateX(-50%);bottom:24px;text-align:center;color:#fff;width:270px;padding:12px 18px;background:#171917ec;border-top:1px solid #c7a362;text-shadow:0 2px 6px #000}.hero-person-label span{font-size:9px;letter-spacing:.23em;display:block;margin-bottom:6px;color:#e5c889}.hero-person-label strong{font-family:Georgia,serif;font-size:31px;font-weight:400;letter-spacing:.01em}.coast-sign{position:absolute;z-index:2;right:6%;top:305px;color:#8b6022;text-align:center;transform:rotate(-6deg)}.coast-sign>span{font-family:Georgia,serif;font-style:italic;font-size:55px;letter-spacing:-.055em;display:block}.coast-sign small{font-size:9px;font-weight:700;line-height:1.8;letter-spacing:.19em;display:block;margin-top:13px;transform:rotate(6deg);color:#3d3629}.hero-location-caption{position:absolute;right:18px;bottom:13px;z-index:3;font-size:10px;color:#fff;text-shadow:0 1px 3px #000}.proof-strip{background:#1a1a19;color:#e4d0a1;border-top:1px solid #9e8147;border-bottom:1px solid #9e8147}.proof-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:20px;padding-bottom:20px;font-size:11px;letter-spacing:.1em}.proof-strip a{text-decoration:none;letter-spacing:0;font-size:13px}.proof-strip small{display:block;text-align:right;font-size:10px;color:#bbb3a3;margin-top:2px}.stars{color:#947022}.proof-strip .stars{color:#e3bd6b}.service-ribbon{display:none}
.section{padding:86px 0}.eyebrow{letter-spacing:.15em;font-size:11px;color:#876626}.section h2{font-size:clamp(35px,3.8vw,55px);line-height:1.05;font-weight:600}.section-heading p{font-size:16px}.service-row{padding:29px 0;border-bottom-color:#ccbea4}.service-row h3{font-size:28px;font-weight:600}.service-row:hover h3{color:#836122}.circle-link{border-radius:0;border-color:#9d844f}.service-row .number{color:#8c6c30}.about{background:#1d1e1c}.about .eyebrow{color:#cbae71}.about h2 em{color:#e0bd73}.about p{color:#d2cabc}.about-facts{border-color:#675d48}.fact{border-color:#675d48}.fact svg{color:#d9b86c}.fact p{color:#c8c1b5}.fact h3{font-weight:500;font-size:23px}.work-panel{border-radius:0;border-color:#b69c69}.work-graphic{background:#272825;border-color:#a88d58}.tile-grid{transform:none;gap:6px}.tile-grid span{border-radius:0!important;background:#f1e5cb;border-color:#aa905b}.tile-grid span:nth-child(2){background:#d6bb80}.tile-grid span:nth-child(3){background:#454438}.work-content h3{font-size:34px;font-weight:500}.review{border-radius:0;border-color:#c5b595;background:transparent}.review blockquote{font-family:Georgia,serif;font-weight:400;letter-spacing:-.01em;line-height:1.35;font-size:25px}.area-section{background:#e5d8ba}.map-figure{border-radius:0;border-color:#9d824b;background:#f7f1e4}.suburbs span{border-radius:0;border-color:#b4a177}.cta{background:#20211e;color:#f6ecd7;border-top:1px solid #746342;border-bottom:1px solid #746342}.cta .eyebrow{color:#dbbc79}.cta h2{font-weight:500}.cta .button{color:#171717;background:linear-gradient(115deg,#e0bf78,#f0d99f,#c2994d)}.site-footer{background:#121310}.site-footer .wordmark{align-items:flex-start}.site-footer .wordmark b{font-size:48px}.site-footer p,.site-footer li{color:#c7c2b7}.license-line{border-top-color:#65573b;color:#ccc1aa}.footer-bottom{color:#bbb19c}.page-intro{padding:70px 0 60px;border-bottom:1px solid #d1c19e;margin-bottom:45px}.page-intro h1{font-family:Arial,sans-serif;line-height:1.03;font-weight:600;font-size:clamp(45px,6vw,78px);max-width:950px}.page-intro p{font-size:18px}.page-intro .eyebrow{color:#76571c}.service-detail{border-radius:0;border-color:#c7b691;background:#faf6ed}.service-detail h2{font-size:31px;font-weight:600}.service-detail p{color:#635c50}.scope-note{border-left-color:#ae8741;color:#5d5344}.step .number{color:#886421}.steps{gap:40px}.step{border-color:#a88b52}.step h3{font-weight:600}.contact-page .page-intro{background:#242520;color:#f3e7cc;margin-bottom:0;padding-bottom:60px}.contact-page .page-intro .eyebrow{color:#d4b46a}.contact-page .page-intro p{color:#d2c8b3}.contact-page .section{padding-top:60px}.contact-aside .callout{border-radius:0;background:#e7d8b5;border:1px solid #bfa471}.quote-form{border-radius:0;border-color:#b6a077;background:#fffcf5}.choice{border-radius:0;border-color:#c6b795}.choice:has(input:checked){background:#f0e0ba;border-color:#937030}.choice input,.consent input{accent-color:#725622}.field-error{color:#963e22}.form-status.error{background:#ffefe4;color:#853619}.form-status.success{background:#e5eadc;color:#314622}.form-status,input[type=text],input[type=tel],input[type=email],textarea{border-radius:0}.notice,.no-script{background:#efe2c4;border-left-color:#a87d32}.contact-big{font-family:Arial,sans-serif;font-weight:500}.review-hero{background:#252620;color:#f6ecd6;border-radius:0;border-color:#aa8b4d}.review-hero .stars{color:#d6b267}.review-hero p{color:#cbc0a6}.review-hero h2{font-size:34px}.rating-number{font-family:Georgia,serif;color:#e1c481}.legal{max-width:870px}.legal h2{font-size:27px;letter-spacing:-.025em}.legal th{background:#e7dcc3}.portrait-stage{border-radius:0!important;background:#dfcfaa;overflow:hidden;max-width:470px}.portrait-stage:before,.portrait-stage:after{display:none}.portrait-stage.original img{border-radius:0!important;mix-blend-mode:normal}.portrait-tag{border-radius:0;transform:none;box-shadow:none;left:0;bottom:0;right:0;background:#171815;color:#f1dbad;border:0;border-top:1px solid #b69552;text-align:center}.portrait-tag strong{font-family:Georgia,serif;font-weight:400}.about-page .detail-grid{grid-template-columns:.8fr 1fr;gap:75px}.mobile-call{background:#171815}.mobile-call a:last-child{background:#d7b773;color:#111}.menu-toggle{border-color:#bc9b59;color:white;border-radius:0}
@media(min-width:1700px){.hero-master{height:870px}.hero-description{top:315px}.hero-scenes{inset:240px 0 0}.hero-person{width:650px;height:650px}.coast-sign{top:350px;right:12%}.material-grid{top:265px}}
@media(max-width:1100px){.nav{gap:16px}.nav-links{gap:15px}.nav-links>a{font-size:12px}.wordmark{min-width:68px}.nav-cta{font-size:13px;padding:12px 16px}.hero-master{height:740px}.hero-title-wrap{padding-top:25px}.hero-title{font-size:9.2vw}.hero-scenes{inset:150px 0 0}.hero-description{top:225px;left:5%;max-width:270px;width:28%}.hero-kicker{font-size:22px}.hero-description>p:nth-child(2){font-size:15px}.hero-buttons{gap:9px;max-width:190px}.hero-buttons .button{padding:12px 16px;width:100%}.hero-licence{font-size:11px;margin-top:20px}.hero-person{width:54%;height:540px}.coast-sign{right:4%;top:280px}.coast-sign>span{font-size:45px}.material-grid{top:315px}.proof-strip .wrap{font-size:9px;gap:17px}.proof-strip a{font-size:12px}.about-page .detail-grid{gap:35px}}
@media(max-width:850px){.nav{min-height:77px}.wordmark b{font-size:32px}.wordmark small{font-size:7px}.nav-links{top:77px;background:#1a1a19;border-bottom:1px solid #b68e45;gap:11px}.nav-links>a{font-size:17px;min-height:40px}.hero-master{height:695px}.hero-title-wrap{padding:24px 4% 0}.hero-title{font-size:9.05vw}.hero-title-rule{margin-top:20px}.title-rule{font-size:8px}.hero-scenes{inset:150px 0 0}.hero-description{top:186px;left:5%;width:30%;max-width:225px}.hero-kicker{font-size:19px}.hero-description>p:nth-child(2){font-size:14px}.hero-person{width:60%;height:500px;left:53%}.hero-person-label{left:53%;bottom:20px}.hero-person-label strong{font-size:27px}.coast-sign{top:220px;right:5%}.coast-sign>span{font-size:36px}.coast-sign small{font-size:8px}.material-grid{top:350px}.hero-location-caption{font-size:8px;max-width:150px;text-align:right}.proof-strip .wrap{flex-wrap:wrap;justify-content:center;gap:10px 25px}.proof-strip a{flex-basis:100%;text-align:center}.proof-strip small{display:inline;margin-left:5px}.section{padding:66px 0}.section h2{font-size:40px}.about-page .detail-grid{grid-template-columns:1fr 1.1fr}.about-page .detail-grid h2{font-size:33px}.page-intro{padding:50px 0 40px}.service-detail h2{font-size:30px}}
@media(max-width:600px){.draft-bar{font-size:10px;padding:6px 10px}.nav{min-height:72px}.nav-links{top:72px}.hero-master{height:855px}.hero-title-wrap{padding:22px 5% 0}.title-rule{font-size:7px;letter-spacing:.17em;margin-bottom:17px}.hero-title{font-size:clamp(48px,12.5vw,75px);line-height:1.03;white-space:normal;max-width:440px;margin:auto;text-shadow:1px 1px 0 #f0d59b,2px 2px 0 #9c762f,3px 4px 0 #eee0b9,4px 5px 0 #19170e,5px 6px 5px #19191644;-webkit-text-stroke:.3px #ad843d}.hero-title-rule{margin-top:19px}.hero-scenes{inset:235px 0 0;grid-template-columns:1fr 1fr}.hero-description{top:201px;left:6%;right:6%;width:auto;max-width:none;z-index:6}.hero-kicker{font-size:18px;max-width:230px;line-height:1.3}.hero-description>p:nth-child(2){font-size:13px;line-height:1.45;margin:12px 0 19px;max-width:230px}.hero-buttons{display:flex;max-width:none;gap:9px;flex-wrap:nowrap}.hero-buttons .button{width:auto;font-size:12px;min-height:43px;padding:12px 15px}.hero-buttons svg{width:14px}.hero-licence{margin-top:17px;padding-top:12px;max-width:245px;font-size:11px}.hero-person{width:100%;height:365px;max-width:440px;left:50%;bottom:0;z-index:4}.hero-person-label{left:50%;bottom:18px;width:230px;padding-top:10px}.hero-person-label strong{font-size:26px}.hero-person-label span{font-size:8px;letter-spacing:.18em}.coast-sign{top:466px;right:5%;z-index:3}.coast-sign>span{font-size:31px;text-shadow:0 1px 5px #fff}.coast-sign small{display:none}.hero-location-caption{bottom:8px;right:6px;max-width:78px;font-size:6px;line-height:1.4}.material-grid{top:236px;background-size:85px 100px,85px 100px,100% 100%}.material-caption{font-size:7px;bottom:21px;left:13%}.coast-scene img{object-position:48% 65%}.coast-scene:after{background:linear-gradient(#f7f2e7 0%,#f7f2e7dd 30%,#f7f2e722 55%,#0c100f88 100%)}.proof-strip .wrap{padding:18px 6%;gap:8px 15px;font-size:8px}.proof-strip a{font-size:12px}.proof-strip small{display:block;font-size:9px;margin:3px 0 0}.section{padding:56px 0}.section h2{font-size:37px}.section-heading p{font-size:16px}.service-row h3{font-size:25px}.service-row p{font-size:15px}.about h2{font-size:43px}.fact h3{font-size:22px}.work-content h3{font-size:29px}.review blockquote{font-size:26px}.cta h2{font-size:40px}.page-intro{padding:37px 0 33px;margin-bottom:30px}.page-intro h1{font-size:46px;line-height:1.04}.page-intro p{font-size:17px}.about-page .detail-grid{grid-template-columns:1fr;gap:36px}.about-page .portrait-wrap{margin:0}.about-page .portrait-stage{max-width:100%;height:460px}.contact-page .page-intro{padding-bottom:36px}.contact-page .section{padding-top:35px}.quote-form{padding:25px 18px}.service-detail{padding:26px}.service-detail h2{font-size:28px}.review-hero h2{font-size:29px}.legal h2{font-size:25px}.footer-brand .wordmark{margin-bottom:20px}.footer-contact a{overflow-wrap:anywhere}.footer-bottom{font-size:12px}.site-footer{padding-bottom:85px}.legal{padding-bottom:60px}}
@media(max-width:370px){.hero-master{height:840px}.hero-description{top:196px}.hero-buttons{gap:7px}.hero-buttons .button{padding:11px;font-size:11px}.hero-title{font-size:12.6vw}.coast-sign{top:492px}}
.hero-title-wrap{z-index:auto}.hero-title,.title-rule{position:relative;z-index:5}.hero-title-rule{position:relative;z-index:1}
.hero-description{background:#f7f2e7;padding:20px 20px 22px;margin-left:-20px}
.hero-kicker{font-size:23px}.hero-description .hero-licence{color:#463a22}
@media(max-width:1100px){.hero-kicker{font-size:20px}.hero-description{padding:17px 14px 20px;margin-left:-14px}}
@media(max-width:600px){.hero-kicker{font-size:18px}.hero-description{padding:0;background:transparent;margin-left:0}.hero-description .hero-licence{background:#f7f2e7d9;padding-bottom:8px}.hero-person{bottom:0}}
@media(max-width:600px){.contact-aside{order:2}.quote-form{order:1}}


/* The six top-level destinations share a moving gold line, not separate boxes. */
.nav{gap:16px}
.nav-links{position:relative;flex:1;min-width:0;justify-content:space-between;gap:3px;margin:0;padding:0}
.nav-links>a,.nav-combined-trigger{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;min-height:50px;padding:10px 11px;color:#e2ddd1;font-size:14px;font-weight:600;line-height:1.25;white-space:nowrap;text-decoration:none;border:0;background:transparent;transition:color .25s ease,transform .38s cubic-bezier(.2,.8,.2,1),text-shadow .3s ease}
.nav-links>a:hover,.nav-links>a[aria-current=page],.nav-combined-trigger:hover,.nav-combined-trigger[aria-expanded=true]{text-decoration:none}
.nav-links>a:hover,.nav-links>a:focus-visible,.nav-combined-trigger:hover,.nav-combined-trigger:focus-visible{color:#ffe4a5;transform:translateY(-4px);text-shadow:0 0 17px #d7ad5c88}
.nav-links>a:active,.nav-combined-trigger:active{transform:translateY(1px) scale(.96)}
.nav-links [data-active=true]{color:#f0cb80}
.nav-links>a:focus-visible,.nav-combined-trigger:focus-visible,.nav-combined-panel>a:focus-visible{outline:2px solid #f2d38f;outline-offset:2px}
.nav-indicator{position:absolute;top:0;left:0;z-index:2;pointer-events:none;opacity:0;background:linear-gradient(90deg,#a56d26,#ffe2a0 46%,#c18a3b);border-radius:10px;box-shadow:0 0 9px #e2b864,0 0 23px #e2b86488;will-change:transform,width}
.indicator-ready .nav-indicator{transition:transform .62s cubic-bezier(.16,1,.3,1),width .55s cubic-bezier(.16,1,.3,1),height .4s,opacity .2s}
.nav-combined{position:relative;display:flex;align-items:center}
.nav-combined-trigger svg{width:12px;height:12px;flex:none;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.nav-combined.open .nav-combined-trigger svg{transform:rotate(180deg)}
.nav-combined-panel{position:absolute;top:calc(100% + 9px);right:0;z-index:5;display:grid;gap:2px;min-width:221px;padding:9px;background:#1c1c1a;border:1px solid #bd9652;box-shadow:0 18px 40px #0007,0 0 16px #dbb66b33;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-11px) scale(.96);transform-origin:top right;transition:opacity .27s ease,transform .37s cubic-bezier(.16,1,.3,1),visibility 0s .37s}
.nav-combined.open .nav-combined-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition-delay:0s}
.nav-combined-panel>a{display:block;padding:12px 13px;color:#e8e1d3;font-size:14px;line-height:1.3;text-decoration:none;transition:color .22s,background .22s,transform .32s cubic-bezier(.16,1,.3,1)}
.nav-combined-panel>a:hover,.nav-combined-panel>a[aria-current=page]{color:#ffe2a0;background:#d8b46920;transform:translateX(4px)}
.nav-cta{flex-shrink:0}
/* Keep the original desktop tabs; compact screens use a three-line menu. */
@media(min-width:1101px) and (max-width:1250px){.nav-links>a,.nav-combined-trigger{padding-inline:7px;font-size:13px}.nav-cta{font-size:13px;padding-inline:15px}}
@media(max-width:1100px){
 .site-header .nav{flex-wrap:wrap;justify-content:space-between;min-height:77px;column-gap:20px;row-gap:3px;padding-top:12px;padding-bottom:9px}
 .site-header .nav-cta{display:inline-flex;margin:0;min-height:46px;padding:11px 16px;font-size:13px}
 .site-header .nav-links{display:flex;position:relative;top:auto;left:auto;right:auto;flex:1 0 100%;order:3;flex-direction:row;align-items:center;justify-content:space-between;gap:0;margin:0;padding:0;background:transparent;border:0;overflow:visible}
 .site-header .nav-links>a,.site-header .nav-combined-trigger{justify-content:center;min-height:46px;padding:9px 8px;font-size:13px}
 .site-header .nav-combined{display:flex;align-items:center}
}

.menu-toggle[hidden]{display:none}
@media(max-width:850px){
 .site-header.nav-enhanced{background:#111510}
 .site-header.nav-enhanced .nav{position:relative;flex-wrap:nowrap;gap:10px;min-height:82px;padding-top:12px;padding-bottom:12px}
 .site-header.nav-enhanced .wordmark{margin-right:auto;flex-shrink:0}
 .site-header.nav-enhanced .nav-cta{order:1;min-height:48px;padding:9px 11px;font-size:12px;gap:8px}
 .site-header.nav-enhanced .nav-cta .quote-arrow{width:25px;height:25px}
 .site-header .menu-toggle{display:flex;order:2;position:relative;flex:0 0 46px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;min-height:46px;padding:0;border:1px solid #b8934d;border-radius:9px;background:linear-gradient(145deg,#313525,#151b12);color:#efd18a;box-shadow:inset 0 1px #f5d59426,0 3px 0 #050804;transition:background .25s,box-shadow .3s}
 .site-header .menu-toggle[hidden]{display:none}
 .menu-toggle>span{display:block;width:21px;height:2px;border-radius:2px;background:currentColor;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .2s}
 .menu-open .menu-toggle{background:#34331f;box-shadow:inset 0 1px #f5d59426,0 0 18px #dbb66930}
 .menu-open .menu-toggle>span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .menu-open .menu-toggle>span:nth-child(2){opacity:0;transform:scaleX(.3)}
 .menu-open .menu-toggle>span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .site-header.nav-enhanced .nav-links{position:absolute;display:flex;flex-direction:column;align-items:stretch;top:calc(100% + 8px);left:12px;right:12px;z-index:5;width:auto;max-height:calc(100dvh - 190px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:10px;border:1px solid #ad8b4a;border-radius:14px;background:linear-gradient(150deg,#24291d,#10160f 75%);box-shadow:0 20px 45px #0009,inset 0 1px #ffe1a326;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px) scale(.98);transform-origin:top right;transition:opacity .22s,transform .35s cubic-bezier(.16,1,.3,1),visibility 0s .35s}
 .site-header.menu-open .nav-links{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
 .site-header.nav-enhanced .nav-links>a,.site-header.nav-enhanced .nav-combined-trigger{justify-content:flex-start;width:100%;min-height:50px;padding:13px 16px 13px 22px;font-size:15px;line-height:1.3;white-space:normal;text-align:left;border-bottom:1px solid #d7b66d20;transform:translateX(-8px);opacity:0;transition:opacity .25s,transform .35s cubic-bezier(.16,1,.3,1),color .25s}
 .site-header.menu-open .nav-links>a,.site-header.menu-open .nav-combined-trigger{opacity:1;transform:none;transition-delay:80ms}
 .site-header.menu-open .nav-links>a:nth-of-type(2){transition-delay:110ms}
 .site-header.menu-open .nav-links>a:nth-of-type(3){transition-delay:140ms}
 .site-header.menu-open .nav-links>a:nth-of-type(4){transition-delay:170ms}
 .site-header.menu-open .nav-links>a:nth-of-type(5){transition-delay:200ms}
 .site-header.menu-open .nav-combined-trigger{transition-delay:230ms;border-bottom:0;justify-content:space-between}
 .site-header .nav-combined{display:block;width:100%}
 .site-header .nav-combined-panel{display:none;position:static;min-width:0;width:100%;margin:0 0 6px;padding:3px 0 3px 12px;border:0;border-left:1px solid #b69755;border-radius:0;background:#0c120c;box-shadow:none;transform:none}
 .site-header .nav-combined.open .nav-combined-panel{display:grid}
 .site-header .nav-combined-panel>a{font-size:14px;min-height:44px}
}
@media(max-width:650px){
 .site-header .nav{padding-top:10px;padding-bottom:5px;row-gap:6px}
 .site-header .nav-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 4px}
 .site-header .nav-links>a,.site-header .nav-combined-trigger{width:100%;min-height:44px;padding:8px 3px;font-size:12px;white-space:normal;text-align:center;line-height:1.3}
 .site-header .nav-combined-panel{min-width:215px;top:calc(100% + 5px)}
}

.motion-enabled #main{animation:route-enter .68s cubic-bezier(.16,1,.3,1) both}
.motion-enabled body.route-leaving #main{animation:none;opacity:0;filter:blur(3px);transform:translateY(-19px) scale(.985);transition:opacity .34s,filter .34s,transform .4s cubic-bezier(.16,1,.3,1)}
.motion-enabled body.route-leaving:after{content:"";position:fixed;top:0;bottom:0;left:-36vw;width:34vw;z-index:99;pointer-events:none;background:linear-gradient(90deg,transparent,#d8a84933 22%,#f7d68cbb 52%,#f9e5b655 77%,transparent);animation:route-sweep .42s ease-in-out both}
@keyframes route-enter{from{opacity:0;filter:blur(4px);transform:translateY(29px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
@keyframes route-sweep{0%{transform:translateX(0);opacity:0}20%{opacity:1}100%{transform:translateX(140vw);opacity:0}}

/* Reduced-motion behavior is shared in cinematic.css. */

/* Black workshop surfaces, a numbered service index and a layered cutaway. */
.services-page{background:#0d0f0d;color:#eeeee5}
.services-page #main{background:#0d0f0d}
.services-page .eyebrow{color:#d8b876;font-size:.875rem;letter-spacing:.12em}
.services-intro{padding:66px 0 44px;background:radial-gradient(ellipse at 77% 12%,#b58b3420,transparent 55%)}
.services-intro-grid{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}
.services-intro h1{font-size:clamp(3rem,6.1vw,5.25rem);line-height:1.02;letter-spacing:-.05em;margin:22px 0}
.services-intro h1 em,.services-process h2 em{font-style:normal;color:#e3c27b}
.services-intro p{max-width:590px;font-size:1.125rem;line-height:1.65;color:#b9bdb2}
.services-signature{display:flex;gap:16px;align-items:flex-start;padding:22px 0 22px 25px;border-left:1px solid #80683c}
.services-signature>svg{width:28px;height:28px;color:#d8b876;flex:none}
.services-signature span{font-size:1rem;line-height:1.5;color:#d6dacd}
.services-signature strong{display:block;font-size:1.125rem;color:#f1e4c6;font-weight:600;margin:4px 0}
.services-signature small{display:block;font-size:.875rem;color:#a8ac9f}
.service-workbench{padding:12px 0 75px}
.service-explorer{display:grid;grid-template-columns:.95fr 1.1fr;gap:28px;align-items:stretch}
.service-picker{display:flex;flex-direction:column;border-top:1px solid #41453b}
.service-choice{position:relative;display:flex;gap:18px;align-items:center;flex:1;min-height:116px;padding:24px 19px 24px 15px;border-bottom:1px solid #41453b;text-decoration:none;color:#d8dbd1;background:transparent;transition:background .35s,color .3s,transform .4s cubic-bezier(.16,1,.3,1)}
.service-choice:before{content:'';position:absolute;left:0;top:19px;bottom:19px;width:3px;background:#e0bb6c;transform:scaleY(0);transform-origin:center;transition:transform .4s cubic-bezier(.16,1,.3,1);box-shadow:0 0 20px #c7984377}
.service-choice:hover{background:#d5b3690b;transform:translateX(5px)}
.service-choice.is-selected{background:linear-gradient(90deg,#d7ac5820,transparent);color:#f6d995}
.service-choice.is-selected:before{transform:scaleY(1)}
.service-number{font-size:.875rem;letter-spacing:.06em;align-self:flex-start;padding-top:4px;color:#949a89;font-variant-numeric:tabular-nums}
.is-selected .service-number{color:#d8b876}
.service-choice-copy{display:block;flex:1}
.service-choice-copy strong{display:block;font-size:1.25rem;font-weight:600;line-height:1.25;letter-spacing:-.025em}
.service-choice-copy>span{display:block;font-size:1rem;line-height:1.5;color:#aab09f;margin-top:8px;max-width:330px}
.service-choice-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid #555c4d;border-radius:50%;flex:none;transition:background .35s,color .35s,transform .4s,border-color .35s}
.service-choice-arrow svg{width:16px;height:16px}
.service-choice.is-selected .service-choice-arrow{background:#e0c081;color:#15170f;border-color:#e0c081;transform:rotate(45deg)}
.service-choice:focus-visible{outline:2px solid #f0ce86;outline-offset:3px;z-index:3}
.service-stage{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:650px;padding:30px;background:radial-gradient(ellipse at 10% 105%,#99803c20,transparent 60%),linear-gradient(140deg,#20241d,#121510 65%);border:1px solid #606247;border-radius:3px;box-shadow:inset 0 1px 0 #e3cf8a16,0 20px 50px #0003}
.service-stage:before,.service-stage:after{content:'';position:absolute;pointer-events:none;width:22px;height:22px;border-color:#d9bb78;border-style:solid}
.service-stage:before{top:7px;left:7px;border-width:1px 0 0 1px}
.service-stage:after{bottom:7px;right:7px;border-width:0 1px 1px 0}
.service-stage-rule{display:flex;justify-content:space-between;gap:18px;font-size:.875rem;color:#b4bb9f;letter-spacing:.075em;padding-bottom:16px;border-bottom:1px solid #61684766}
.service-stage-count{color:#e0c081;font-variant-numeric:tabular-nums}
.service-back{display:none}
.service-panel{padding-top:25px}
.service-panel[hidden]{display:none}
.service-panel h2{font-size:2.25rem;line-height:1.1;font-weight:600;letter-spacing:-.035em;margin-bottom:15px;color:#f3f2e9}
.service-panel p{font-size:1rem;line-height:1.65;color:#bfc5b2}
.service-panel ul{list-style:none;padding:0;margin:20px 0 22px;display:grid;gap:9px}
.service-panel li{display:flex;align-items:flex-start;gap:10px;font-size:1rem;line-height:1.4;color:#d0d4c5}
.service-panel li svg{width:17px;height:17px;flex:none;margin-top:3px;color:#dcc080}
.service-discuss{display:inline-flex;align-items:center;gap:15px;font-size:1rem;font-weight:600;color:#f1d391;text-decoration:none;border-bottom:1px solid #8a723f;padding-bottom:6px}
.service-discuss svg{width:18px;height:18px;transition:transform .3s}
.service-discuss:hover svg{transform:translateX(5px)}
.service-scope-link{display:block;width:max-content;max-width:100%;font-size:.875rem;color:#aab39a;margin-top:13px;text-underline-offset:4px}
.service-cutaway{margin:24px -5px -5px;flex:1;display:flex;flex-direction:column;justify-content:flex-end}
.service-cutaway svg{width:100%;height:auto;max-height:250px;overflow:visible}
.service-cutaway figcaption{font-size:.875rem;color:#959e85;margin-top:14px;border-top:1px solid #61684766;padding-top:12px}
.cutaway-labels{font-size:17px}
.service-layer-legend{display:none}
.layer-finish,.layer-membrane,.layer-base{transition:filter .4s,transform .5s cubic-bezier(.16,1,.3,1);transform-origin:center}
.service-stage[data-selected=preparation] .layer-base{filter:brightness(1.6)}
.service-stage[data-selected=sealing] .layer-membrane{filter:brightness(1.3)}
.service-stage[data-selected=repairs] .layer-membrane{filter:drop-shadow(0 0 8px #edce7777)}
.service-panel.is-entering{animation:service-detail-in .48s cubic-bezier(.16,1,.3,1) both}
.service-stage.is-switching .layer-membrane{animation:service-layer-open .75s cubic-bezier(.16,1,.3,1) both}
.service-stage.is-switching .layer-finish{animation:service-layer-top .75s cubic-bezier(.16,1,.3,1) both}
@keyframes service-detail-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
@keyframes service-layer-open{0%{transform:translateY(0)}45%{transform:translateY(-9px)}100%{transform:translateY(0)}}
@keyframes service-layer-top{0%{transform:translateY(0)}45%{transform:translateY(-20px)}100%{transform:translateY(0)}}
.services-scope{display:grid;grid-template-columns:165px 1fr;gap:24px;margin-top:30px;padding:22px 0;border-bottom:1px solid #41453b}
.services-scope>span{font-size:.875rem;letter-spacing:.08em;color:#d6b775;padding-top:3px}
.services-scope p{font-size:1rem;line-height:1.6;color:#a6ad9d;max-width:780px}
.services-process{padding:65px 0 70px;border-top:1px solid #383d31;background:#141711}
.services-process-heading{margin-bottom:38px}
.services-process h2{font-size:clamp(2.25rem,4vw,3.5rem);line-height:1.08;margin-top:18px;font-weight:600}
.services-process ol{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;list-style:none;padding:0;margin:0}
.services-process li{display:flex;gap:18px;padding-top:24px;border-top:1px solid #6f6d4f}
.services-process li>span{font-size:.875rem;color:#d8b876;line-height:1.5;padding-top:3px}
.services-process h3{font-size:1.25rem;line-height:1.2;font-weight:600;margin:0 0 12px}
.services-process p{font-size:1rem;line-height:1.6;color:#acb29f}
.services-quote{padding:70px 0;background:#0d0f0d}
.services-quote>.wrap{display:grid;grid-template-columns:1fr auto;gap:24px 36px;align-items:center;padding-top:38px;padding-bottom:38px;border-block:1px solid #655638;background:radial-gradient(ellipse at 75% 50%,#b58b3420,transparent 65%)}
.services-quote h2{font-size:clamp(2.25rem,4vw,3.5rem);line-height:1.08;margin-top:18px;font-weight:600}
.services-quote>.wrap>p{font-size:.875rem;color:#a5ab98;grid-column:1/-1}

/* Quote links behave like an illuminated metal plate. The enquiry form is untouched. */
.button.quote-cta,.quote-cta-mobile{position:relative;isolation:isolate;overflow:hidden;gap:13px;transition:background .3s,color .3s,box-shadow .4s,transform .35s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 0 0 3px #f7e1a855,inset 0 0 0 4px #7c582a66,0 4px 0 #473516;transform:translateY(0)}
.button.quote-cta{padding:11px 16px;min-height:55px}
.quote-cta:before{content:'';position:absolute;inset:-65% -30%;z-index:-1;pointer-events:none;background:linear-gradient(100deg,transparent 35%,#fff3c255 47%,#fff7dfcc 50%,#fff3c255 53%,transparent 65%);transform:translateX(-110%) skewX(-18deg);opacity:0}
.quote-cta:after{content:'';position:absolute;inset:4px;z-index:-1;pointer-events:none;border:1px solid #85642b99;transition:border-color .3s}
.quote-label{position:relative;z-index:1;display:block;white-space:nowrap}
.quote-arrow{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:29px;height:29px;border:1px solid #7a5c2d80;border-radius:50%;background:#62481a12;transition:background .3s,color .3s,transform .45s cubic-bezier(.16,1,.3,1),border-color .3s}
.quote-cta .quote-arrow svg{display:block;width:15px;height:15px}
.nav-cta.quote-cta{font-size:.875rem;gap:10px;padding-inline:13px}
.quote-cta:focus-visible{outline:2px solid #fff0c4;outline-offset:5px}
@media(hover:hover) and (pointer:fine) and (min-width:1101px){
 .button.quote-cta:hover,.button.quote-cta:focus-visible{background:#171a13;color:#f8dc9b;border-color:#d9b56b;box-shadow:inset 0 0 0 3px #242a1e,inset 0 0 0 4px #b8914f88,0 7px 0 #473516,0 10px 32px #c49b4233;transform:translateY(-3px)}
 .quote-cta:hover:after,.quote-cta:focus-visible:after{border-color:#d9b56b88}
 .quote-cta:hover:before,.quote-cta:focus-visible:before{opacity:1;animation:quote-metal-sweep .75s cubic-bezier(.2,.65,.3,1) both}
 .quote-cta:hover .quote-arrow,.quote-cta:focus-visible .quote-arrow{background:#e7c581;color:#171a13;border-color:#f1dcaa;transform:translateX(3px) rotate(45deg)}
}
.button.quote-cta:active,.button.quote-cta.is-pressed,.quote-cta-mobile:active,.quote-cta-mobile.is-pressed{background:#15190f;color:#ffe2a1;border-color:#e9c682;box-shadow:inset 0 0 0 3px #242a1e,inset 0 0 0 4px #d1ab5e,0 0 28px #d2a34255;transform:translateY(2px) scale(.97)}
.quote-cta:active .quote-arrow,.quote-cta.is-pressed .quote-arrow{background:#efce89;color:#12160c;border-color:#f7dfab;transform:rotate(45deg) scale(1.08)}
.quote-cta.is-pressed:before{opacity:1;animation:quote-metal-sweep .6s ease-out both}
.mobile-call .quote-cta-mobile{gap:9px;box-shadow:none;padding:6px 11px;background:linear-gradient(110deg,#ddb872,#f0d699,#b8893e);color:#171717}
.mobile-call .quote-cta-mobile .quote-label{white-space:normal;font-size:.875rem}
.mobile-call .quote-cta-mobile .quote-arrow{width:25px;height:25px}
.mobile-call .quote-cta-mobile.is-pressed,.mobile-call .quote-cta-mobile:active{background:#15190f;color:#ffe2a1;transform:scale(.97)}
@keyframes quote-metal-sweep{from{transform:translateX(-90%) skewX(-18deg)}to{transform:translateX(90%) skewX(-18deg)}}
@media(max-width:950px){
 .services-intro-grid{grid-template-columns:1fr;gap:28px}
 .services-signature{padding-block:8px}
 .service-explorer{grid-template-columns:1fr}
 .service-picker{display:grid;grid-template-columns:1fr 1fr}
 .service-choice{min-height:130px;padding:22px 15px;gap:13px}
 .service-choice:last-child{grid-column:1/-1;min-height:100px}
 .service-choice-copy>span{max-width:100%}
 .service-stage{min-height:0;padding:30px}
 .service-back{display:block;width:max-content;font-size:.875rem;color:#c0bc9c;margin-top:17px;text-underline-offset:4px}
 .service-cutaway{max-width:600px;width:100%;align-self:center;margin-top:30px}
 .service-cutaway svg{max-height:280px}
 .services-process ol{gap:22px}
}
@media(max-width:600px){
 .services-intro{padding:36px 0 28px}
 .services-intro h1{font-size:clamp(2.55rem,12.7vw,3.15rem);margin:19px 0}
 .services-intro p{font-size:1rem;line-height:1.6}
 .services-signature{padding-left:17px;gap:13px}
 .services-signature strong{font-size:1rem}
 .service-workbench{padding-top:5px;padding-bottom:42px}
 .service-explorer{gap:22px}
 .service-picker{grid-template-columns:1fr}
 .service-choice,.service-choice:last-child{min-height:103px;grid-column:auto;padding:21px 13px;gap:12px}
 .service-choice-copy strong{font-size:1.125rem}
 .service-choice-copy>span{font-size:1rem;margin-top:6px}
 .service-choice-arrow{width:30px;height:30px}
 .service-stage{padding:24px 19px}
 .service-stage-rule{font-size:.875rem;letter-spacing:0;gap:10px}
 .service-panel h2{font-size:1.85rem}
 .service-panel p,.service-panel li{font-size:1rem}
 .service-cutaway{margin:23px 0 0}
 .service-cutaway svg{width:115%;max-width:none;align-self:center;max-height:240px}
 .cutaway-labels,.cutaway-leaders{display:none}
 .service-cutaway .layer-base,.service-cutaway .layer-membrane,.service-cutaway .layer-finish{translate:65px 0}
 .service-layer-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;color:#bac2aa;font-size:.875rem}
 .service-layer-legend span{display:flex;align-items:center;gap:7px}
 .service-layer-legend span:before{content:'';width:10px;height:10px;border:1px solid #818777;background:#363c2e}
 .service-layer-legend span:nth-child(2){color:#e5cb8e}
 .service-layer-legend span:nth-child(2):before{background:#d9b978;border-color:#efdaaa}
 .service-cutaway figcaption{font-size:.875rem}
 .services-scope{grid-template-columns:1fr;gap:11px;margin-top:22px;padding-block:18px}
 .services-process{padding:42px 0}
 .services-process-heading{margin-bottom:25px}
 .services-process h2,.services-quote h2{font-size:2.2rem}
 .services-process ol{grid-template-columns:1fr;gap:23px}
 .services-process li{padding-top:20px}
 .services-quote{padding:42px 0}
 .services-quote>.wrap{grid-template-columns:1fr;padding-top:28px;padding-bottom:28px;gap:25px}
 .services-quote .quote-cta{width:max-content;max-width:100%}
 .hero-buttons .button.quote-cta{gap:8px;padding:9px 11px;min-height:46px}
 .hero-buttons .quote-arrow{width:23px;height:23px}
}


/* The Home service collection and its separate visual guides. */
.service-catalog,.service-layer-page{--project-ink:#f3eee2;--project-muted:#c2bcb0;--project-gold:#e5c582;--project-line:#514a3c;background:#0d0f0d;color:var(--project-ink)}
.service-catalog{position:relative;padding:88px 0 32px;overflow:hidden;background:radial-gradient(ellipse at 95% 0,#ac86451a,transparent 55%),#0d0f0d}
.service-catalog .eyebrow,.service-layer-page .eyebrow{color:#dcc085}
.catalog-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:end;margin-bottom:42px}
.catalog-heading h1,.catalog-heading h2{font-size:clamp(48px,5.5vw,78px);line-height:1.02;font-weight:600;letter-spacing:-.055em;margin-top:20px}
.catalog-heading em,.layer-intro em,.project-next em{font-style:normal;color:var(--project-gold)}
.catalog-heading-copy{max-width:415px;padding-bottom:5px}.catalog-heading-copy p{font-size:16px;line-height:1.65;color:var(--project-muted)}
.catalog-heading-copy p:first-child{color:#f4ead4;font-size:21px;font-weight:500;margin-bottom:12px;letter-spacing:-.02em}
.catalog-instruction{display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.16em;color:#e0c184;margin-top:24px}
.catalog-instruction svg{width:17px;height:17px;transform:rotate(90deg)}
.catalog-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.catalog-card{position:relative;min-width:0;border:1px solid #4e4637;border-radius:12px;background:linear-gradient(130deg,#262820,#171a16 60%,#101410);box-shadow:inset 0 1px 0 #f2dfa114,0 7px 0 #070907,0 15px 30px #0003;transition:border-color .35s,box-shadow .4s,transform .4s}
.catalog-card:before{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(110deg,transparent 35%,#e6c68615 50%,transparent 65%);background-size:300% 100%;background-position:100% 0;transition:background-position .9s}
.catalog-card .catalog-card-body{position:relative;list-style:none;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:8px;min-height:300px;padding:30px;border-radius:inherit}
.catalog-card .catalog-card-body::-webkit-details-marker{display:none}.catalog-card .catalog-card-body:focus-visible{outline:2px solid #f1d99e}
.catalog-featured{grid-column:1/-1}.catalog-featured .catalog-card-body{grid-template-columns:1fr 1.1fr;gap:30px;min-height:335px;padding:38px 42px}
.catalog-card-meta{display:flex;flex-direction:column;gap:7px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#b2b09f;line-height:1.6;margin-bottom:15px}.catalog-card-meta>span:first-child{color:#e0c48a;letter-spacing:.18em}
.catalog-card h3{font-size:clamp(27px,2.5vw,36px);line-height:1.08;font-weight:600;letter-spacing:-.035em;max-width:355px;margin-bottom:14px;color:#f5efdf}
.catalog-featured h3{font-size:clamp(36px,4vw,54px);max-width:470px}
.catalog-description{display:block;font-size:16px;line-height:1.6;color:#c6c2b3;max-width:390px}
.catalog-tags{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:19px;color:#d7c299;font-size:12px;line-height:1.5}
.catalog-tags>span{border-bottom:1px solid #6c5e3f;padding-bottom:3px}.catalog-choose{display:block;font-size:12px;color:#aeb5a4;margin-top:24px}
.catalog-card-visual{min-width:0;display:block;pointer-events:none}.catalog-arrow{position:absolute;display:grid;place-items:center;right:22px;top:22px;width:39px;height:39px;border:1px solid #9b8049;border-radius:50%;background:#151a12;color:#edcc8a;box-shadow:inset 0 0 0 4px #bc944311,0 4px 0 #0003;transition:transform .5s cubic-bezier(.16,1,.3,1),background .4s,color .4s,box-shadow .4s}
.catalog-arrow svg{width:18px;height:18px}.catalog-featured .catalog-arrow{top:auto;bottom:28px;right:30px}
.catalog-card:hover,.catalog-card:focus-within,.catalog-card:focus-within{border-color:#c5a35f;box-shadow:inset 0 1px 0 #ebd9a72e,0 7px 0 #070907,0 15px 32px #bd893d13}
.catalog-card:hover:before,.catalog-card:focus-within:before{background-position:0 0}
.catalog-card:focus-within .catalog-arrow{transform:rotate(45deg);background:#e6c686;color:#10170d;box-shadow:0 0 28px #cbab5940}
.catalog-card:focus-within .catalog-choose{color:#edca83}
.catalog-actions{padding:0 30px 30px;overflow:hidden;scroll-margin-bottom:85px}.catalog-featured .catalog-actions{padding:0 42px 32px}
.catalog-actions>span{display:block;font-size:13px;color:#cabfaa;padding-top:20px;border-top:1px solid #5f533a;margin-bottom:17px}
.catalog-actions>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;max-width:580px}
.catalog-explore{display:flex;align-items:center;justify-content:space-between;gap:15px;text-decoration:none;color:#f1dbac;min-height:63px;font-size:15px;font-weight:600;padding:13px 16px;border:1px solid #b99a60;background:#11180f;box-shadow:inset 0 0 0 3px #c8aa6c0c;transition:background .3s,border-color .3s,box-shadow .3s}
.catalog-explore small{display:block;font-size:12px;font-weight:400;color:#bbb6a6;margin-top:5px}.catalog-explore svg{width:20px;height:20px;transition:transform .4s}.catalog-explore:hover svg{transform:translate(4px,-4px)}
.catalog-scope{font-size:14px;line-height:1.7;color:#bdb5a3;max-width:930px;margin:32px 0 28px}.catalog-scope>span{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#e3c588;margin-bottom:9px}
.catalog-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #4b4232;padding-top:21px;font-size:11px;letter-spacing:.09em;color:#beb69f}.catalog-footer>span:last-child{display:flex;align-items:center;gap:12px}.catalog-footer svg{width:16px;height:16px}
.project-visual{margin:0;position:relative;min-width:0}.project-visual svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 18px 16px #0006)}
.catalog-card .project-visual{width:100%;max-width:440px;margin:auto}.catalog-card .project-visual svg{max-height:290px}
.project-layer{transform-box:fill-box;transform-origin:center;transition:transform .65s cubic-bezier(.16,1,.3,1),filter .6s,opacity .6s}
.catalog-card .project-layer-1{transform:translateY(-13px)}.catalog-card .project-layer-3{transform:translateY(13px)}
.catalog-card:hover .project-layer-1,.catalog-card:focus-within .project-layer-1{transform:translateY(12px)}.catalog-card:hover .project-layer-3,.catalog-card:focus-within .project-layer-3{transform:translateY(-16px)}
.catalog-card:hover .project-layer-2,.catalog-card:focus-within .project-layer-2{filter:brightness(1.25) drop-shadow(0 0 8px #d4b27444)}
.catalog-card.is-revealing{animation:catalog-arrive .7s cubic-bezier(.16,1,.3,1) both}.catalog-card.will-reveal{opacity:0;transform:translateY(32px)}
@keyframes catalog-arrive{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
.service-layer-page main{background:radial-gradient(ellipse at 90% 0,#bd995417,transparent 50%),#0d0f0d}
.layer-intro{padding:40px 0 42px;border-bottom:1px solid #5b4e34}.layer-back{display:flex;align-items:center;gap:10px;font-size:14px;text-decoration:none;color:#d8c6a3;width:max-content;margin-bottom:38px}.layer-back svg{width:15px;height:15px;transform:rotate(-135deg)}
.layer-intro-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:60px}.layer-intro h1{font-size:clamp(45px,5.3vw,76px);line-height:1.06;letter-spacing:-.055em;margin:18px 0 23px;max-width:880px}.layer-intro p{font-size:18px;line-height:1.7;color:#c5c1b4;max-width:720px}
.layer-intro-action{display:grid;gap:17px;justify-items:start}.layer-intro-action>span{font-size:12px;color:#bcb6a5;max-width:200px}.layer-includes{display:flex;flex-wrap:wrap;gap:13px 25px;margin-top:30px;font-size:14px;color:#e2c78f}.layer-includes span{border-bottom:1px solid #7c6740;padding-bottom:6px}
.layer-workbench{padding:48px 0 38px}.layer-workbench-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.layer-workbench-heading p{font-size:14px;color:#bfb7a3}
.project-explorer{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px;align-items:start}.project-step-list{display:grid;gap:13px;position:sticky;top:125px}
.project-step{position:relative;display:flex;align-items:center;gap:19px;padding:24px 20px;min-height:116px;text-decoration:none;border:1px solid #494b3b;border-radius:8px;background:linear-gradient(110deg,#242820,#151a13);color:#d0cebd;transition:background .4s,border-color .4s,transform .4s,box-shadow .4s;overflow:hidden}
.project-step>span:first-child{font-size:13px;letter-spacing:.1em;color:#b6a47c}.project-step>span:nth-child(2){flex:1}.project-step small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#b6b99f;margin-bottom:9px}.project-step strong{display:block;font-size:20px;line-height:1.25;font-weight:500;letter-spacing:-.025em}.project-step>svg{width:17px;height:17px;flex:none;transition:transform .5s}
.project-step.is-selected{border-color:#dbb975;background:linear-gradient(110deg,#504128,#252a1d);box-shadow:inset 4px 0 #e7c581,0 7px 18px #0003;color:#fff2d3}.project-step.is-selected small{color:#f0d5a0}.project-step.is-selected>svg{transform:rotate(45deg);color:#f4d59a}.project-step:hover{border-color:#c7a767;transform:translateX(5px)}
.project-stage{background:linear-gradient(150deg,#242820,#161b14 75%);border:1px solid #817049;border-radius:12px;padding:25px 30px;box-shadow:inset 0 1px 0 #f1dca31f,0 8px 0 #070a07,0 18px 40px #0005;overflow:hidden}
.project-stage-top{display:flex;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #5a563e;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#d4c599}.project-stage-count{white-space:nowrap;color:#edce8a}
.project-stage .project-visual{margin:22px auto 0;max-width:650px}.project-stage .project-visual svg{max-height:350px}
.project-stage .project-layer{opacity:.68}.project-stage[data-step="1"] .project-layer-1,.project-stage[data-step="2"] .project-layer-2,.project-stage[data-step="3"] .project-layer-3{opacity:1;filter:brightness(1.18) drop-shadow(0 0 9px #e7be6944)}
.project-stage[data-step="1"] .project-layer-1{transform:translateY(8px)}.project-stage[data-step="2"] .project-layer-2{transform:translateY(-8px)}.project-stage[data-step="3"] .project-layer-3{transform:translateY(-16px)}
.project-visual figcaption{font-size:12px;color:#aaa997;line-height:1.55;margin-top:15px}.project-panel{padding-top:27px;margin-top:23px;border-top:1px solid #5a563e}.project-panel[hidden]{display:none}.project-panel h2{font-size:28px;line-height:1.2;margin:12px 0 15px;color:#f4eedc}.project-panel p{font-size:16px;line-height:1.75;color:#ccc7b6}.project-panel ul{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:9px}.project-panel li{font-size:14px;line-height:1.6;color:#ddcfad;padding-left:19px;position:relative}.project-panel li:before{content:'';position:absolute;left:0;top:9px;width:6px;height:6px;background:#d6b477;transform:rotate(45deg)}
.project-layer-legend{list-style:none;display:flex;flex-wrap:wrap;gap:12px 20px;padding:0;margin:18px 0 0;font-size:14px;color:#a8b49b;line-height:1.5}.project-layer-legend li{display:flex;align-items:center;gap:8px;transition:color .4s}.project-legend-number{font-size:10px;letter-spacing:.08em;border:1px solid #626c54;padding:3px 5px;line-height:1.3}.project-layer-legend li[aria-current="step"]{color:#f1d499}.project-layer-legend li[aria-current="step"] .project-legend-number{border-color:#cbaa66;background:#d8b96a1a}
.catalog-card.is-closing .catalog-arrow{transform:rotate(0);background:#151a12;color:#edcc8a}
.project-panel.is-entering{animation:project-detail-in .5s cubic-bezier(.16,1,.3,1) both}.project-stage.is-switching .project-visual svg{animation:project-diagram-in .6s ease both}
@keyframes project-detail-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes project-diagram-in{from{opacity:.55}to{opacity:1}}
.project-controls{display:none;align-items:center;justify-content:space-between;margin-top:28px;padding-top:19px;border-top:1px solid #5a563e}.project-enhanced .project-controls{display:flex}.project-controls>span{font-size:10px;letter-spacing:.13em;color:#bab39d}.project-controls button{border:1px solid #9e8350;border-radius:50%;background:#202718;color:#e1c484;width:42px;height:42px;display:grid;place-items:center;cursor:pointer}.project-controls svg{width:18px;height:18px;transform:rotate(45deg)}.project-controls button:first-child svg{transform:rotate(-135deg)}.project-controls button:hover{background:#e4c17a;color:#16200f}
.project-next{padding:60px 0;background:#22271d;border-top:1px solid #74603b}.project-next>.wrap{display:grid;grid-template-columns:1fr auto;gap:25px 40px;align-items:center}.project-next h2{font-size:clamp(36px,4vw,55px);line-height:1.08;margin:18px 0}.project-next p{font-size:16px;color:#c6c1af}.project-next>.wrap>a:last-child{grid-column:1/-1;font-size:14px;color:#d6c398;display:flex;align-items:center;gap:12px;width:max-content;text-decoration:none}.project-next>.wrap>a:last-child svg{width:17px;height:17px}
@media(max-width:1000px){.catalog-heading{gap:35px}.catalog-card .catalog-card-body{padding:26px 23px;grid-template-columns:1fr;gap:15px}.catalog-card h3{max-width:100%}.catalog-card-visual{max-width:310px;margin:auto;width:100%}.catalog-featured .catalog-card-body{grid-template-columns:1fr 1fr;gap:25px;min-height:300px}.catalog-card:not(.catalog-featured) .catalog-card-visual svg{max-height:175px}.catalog-actions{padding:0 23px 25px}.catalog-featured .catalog-actions{padding:0 23px 25px}.catalog-arrow{top:19px;right:18px}.catalog-card-meta{max-width:calc(100% - 42px)}.project-explorer{grid-template-columns:.75fr 1.25fr;gap:20px}.project-stage{padding:23px}.project-step{padding:23px 16px;gap:13px}.project-step strong{font-size:18px}.layer-intro-grid{gap:30px}.layer-intro h1{font-size:56px}}
@media(max-width:760px){.service-catalog{padding:55px 0 27px}.catalog-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.catalog-heading h1,.catalog-heading h2{font-size:55px}.catalog-heading-copy p:first-child{font-size:19px}.catalog-grid{grid-template-columns:1fr;gap:20px}.catalog-featured{grid-column:auto}.catalog-card .catalog-card-body,.catalog-featured .catalog-card-body{grid-template-columns:1fr .8fr;padding:27px 24px;gap:17px;min-height:270px}.catalog-card h3,.catalog-featured h3{font-size:32px}.catalog-card-meta{margin-bottom:14px}.catalog-description{font-size:16px}.catalog-tags{font-size:12px}.catalog-arrow,.catalog-featured .catalog-arrow{top:22px;bottom:auto;right:20px}.catalog-card-visual{align-self:center}.catalog-actions>div{gap:19px}.catalog-featured .catalog-actions{padding:0 24px 26px}.catalog-footer{font-size:10px;letter-spacing:.05em}.layer-intro{padding:27px 0 35px}.layer-back{margin-bottom:30px}.layer-intro-grid{grid-template-columns:1fr;gap:25px}.layer-intro h1{font-size:50px;overflow-wrap:break-word}.layer-intro-action{gap:14px}.layer-intro-action>span{max-width:none}.layer-intro p{font-size:17px}.layer-workbench{padding:34px 0}.layer-workbench-heading{display:block}.layer-workbench-heading p{margin-top:11px}.project-explorer{grid-template-columns:1fr;gap:22px}.project-step-list{position:static;grid-template-columns:repeat(3,1fr);gap:8px}.project-step{display:block;padding:17px 12px;min-height:145px}.project-step>span:first-child{display:block;margin-bottom:11px}.project-step strong{font-size:15px;line-height:1.3}.project-step small{font-size:10px;line-height:1.4;letter-spacing:.025em}.project-step>svg{display:none}.project-step:hover{transform:none}.project-stage{padding:23px}.project-stage .project-visual{margin-top:16px}.project-next{padding:42px 0}.project-next>.wrap{grid-template-columns:1fr}.project-next .quote-cta{width:max-content}.project-next h2{font-size:42px}}
@media(max-width:480px){.catalog-heading h1,.catalog-heading h2{font-size:46px}.catalog-card .catalog-card-body,.catalog-featured .catalog-card-body{grid-template-columns:1fr;gap:4px;padding:25px 23px 17px;min-height:0}.catalog-card h3,.catalog-featured h3{font-size:30px;padding-right:32px}.catalog-card-meta{font-size:10px}.catalog-card-visual{max-width:300px}.catalog-card .project-visual svg{max-height:180px}.catalog-description{font-size:16px;line-height:1.6}.catalog-tags{gap:6px 10px;margin-top:14px}.catalog-choose{margin-top:17px}.catalog-actions>div{display:grid;grid-template-columns:1fr;gap:20px}.catalog-actions .quote-cta{width:max-content;min-width:175px}.catalog-explore{width:100%;padding-block:7px}.catalog-scope{font-size:14px;margin-top:27px}.catalog-footer{flex-direction:column;align-items:flex-start;gap:12px}.layer-intro h1{font-size:clamp(34px,10vw,45px);letter-spacing:-.045em}.layer-includes{gap:12px 17px;font-size:13px}.project-stage{padding:22px 18px}.project-stage-top{font-size:10px;letter-spacing:.04em}.project-step-list{gap:7px}.project-step{padding:15px 10px;min-height:140px}.project-step strong{font-size:14px}.project-panel h2{font-size:26px}.project-panel p{font-size:16px}.project-controls>span{font-size:9px;letter-spacing:.06em}.project-next h2{font-size:37px}}


/* Always-visible service choices and a direct contact invitation. */
.catalog-card{display:flex;flex-direction:column}.catalog-actions{margin-top:auto}.catalog-actions .quote-cta{width:100%;min-width:0;justify-content:center}.catalog-explore:hover,.catalog-explore:focus-visible{background:#333923;border-color:#f0d498;box-shadow:0 0 24px #c9a45425}.catalog-explore svg{flex:none}.catalog-card:last-child{grid-column:1/-1}.catalog-card:last-child .catalog-card-body{grid-template-columns:1fr 1.1fr;min-height:275px}.catalog-card:last-child .project-visual{max-width:340px}.catalog-card-meta{max-width:100%}.catalog-card h3{padding-right:0}
.other-work-section{background:#1d1e1c;padding:15px 0 70px}.about .other-work-box{margin-top:55px}.other-work-box{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px 50px;padding:36px 40px;border:1px solid #9b7f49;border-radius:10px;background:linear-gradient(120deg,#2b2e24,#161d14);color:#f4ecda;box-shadow:inset 0 1px 0 #ebd19722,0 8px 22px #0002}.other-work-box .eyebrow{color:#dec28a}.other-work-box h2{font-size:34px;line-height:1.12;margin:17px 0 20px}.other-work-box p{font-size:16px;line-height:1.7;color:#d0c9b8;max-width:650px;margin:0}.other-work-actions{display:grid;gap:12px;min-width:245px}.other-work-actions a{display:flex;align-items:center;gap:15px;min-height:70px;padding:15px 20px;border:1px solid #b99a60;text-decoration:none;background:#12190f;color:#edcf92;transition:background .3s,transform .3s}.other-work-actions a:hover{background:#373c26;transform:translateY(-2px)}.other-work-actions svg{width:21px;height:21px;flex:none}.other-work-actions span{font-size:16px;font-weight:600}.other-work-actions small{display:block;font-size:13px;font-weight:400;color:#d2c6a9;margin-top:5px;overflow-wrap:anywhere}
@media(max-width:1000px){.catalog-actions>div{grid-template-columns:1fr}.other-work-box{grid-template-columns:1fr;gap:25px}.other-work-actions{grid-template-columns:1fr 1fr}.catalog-featured .catalog-actions>div,.catalog-card:last-child .catalog-actions>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.catalog-featured .catalog-actions>div,.catalog-card:last-child .catalog-actions>div{grid-template-columns:1fr}.catalog-actions>div{gap:12px}.catalog-actions .quote-cta{width:100%;min-width:0}.catalog-explore{padding:14px 16px;min-height:66px}.catalog-card:last-child .catalog-card-body{grid-template-columns:1fr;min-height:0}.other-work-box{padding:27px 23px;gap:25px}.other-work-box h2{font-size:29px}.other-work-actions{grid-template-columns:1fr;min-width:0}.other-work-section{padding:0 0 45px}.about .other-work-box{margin-top:35px}}


/* Let service enquiry labels wrap and keep the gold button at its natural height. */
.catalog-actions>div{align-items:center}
.catalog-actions .quote-cta{width:max-content;max-width:100%;min-width:0;justify-self:start;align-self:center;gap:10px}
.catalog-actions .quote-label{min-width:0;white-space:normal;line-height:1.3;text-align:center}
.catalog-actions .quote-arrow{flex-shrink:0}
@media(max-width:600px){.catalog-actions>div,.catalog-featured .catalog-actions>div,.catalog-card:last-child .catalog-actions>div{grid-template-columns:minmax(0,1fr)}}

/* Contact feedback, featured review, portrait and suburb selector. */
@media(max-width:600px){
 .mobile-call{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:6px;min-height:66px;padding:6px;border:1px solid #a68a4c;border-radius:14px;background:#10160ff5;box-shadow:0 8px 30px #0008,inset 0 1px #ffe1a321}
 .mobile-call>a{width:100%;min-width:0;min-height:52px;flex:initial;gap:7px;padding:8px;border:1px solid #84744766;border-radius:9px;font-size:13px;line-height:1.3}
 .mobile-call>a:first-child{color:#f5e9cd;background:#20271b}
 .mobile-call .quote-cta-mobile{min-width:0;padding:8px;gap:7px;border-color:#dfc17d}
 .mobile-call .quote-cta-mobile .quote-label{min-width:0;font-size:13px;line-height:1.3;text-align:center}
 .mobile-call svg{flex-shrink:0}
 .site-footer{padding-bottom:110px}
 .contact-toast{bottom:calc(96px + env(safe-area-inset-bottom))}
}
.footer-grid{grid-template-columns:1.2fr 1fr 1fr .8fr .8fr;gap:28px}.footer-interactive{position:relative;min-width:0}.footer-interactive h2{color:#f3dfb8}.footer-interactive ul a{display:inline-block;max-width:100%;padding:4px 0;overflow-wrap:anywhere;transition:color .24s,transform .4s cubic-bezier(.16,1,.3,1),text-shadow .3s}.footer-interactive ul a:hover,.footer-interactive ul a:focus-visible,.footer-interactive ul a.footer-pressed{color:#ffe5a6;text-shadow:0 0 18px #d9ae5888;transform:translateX(5px);text-decoration:none}.footer-interactive ul a.footer-pressed{transform:translateX(7px) scale(.97)}.footer-interactive ul a:focus-visible{outline:2px solid #efd08a;outline-offset:5px}.footer-motion-indicator{position:absolute;left:0;top:0;height:3px;border-radius:3px;background:linear-gradient(90deg,#af792e,#ffe3a2,#c18a3b);box-shadow:0 0 9px #e2b864,0 0 22px #e2b86488;pointer-events:none;opacity:0;transition:transform .55s cubic-bezier(.16,1,.3,1),width .45s,opacity .25s}.site-footer .footer-manager-description{font-size:14px;margin:0 0 8px;color:#d3b779}.footer-manager ul{margin-top:0}
@media(max-width:1100px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:auto}}
@media(max-width:600px){.footer-grid{gap:32px 22px}.footer-contact,.footer-manager{grid-column:1/-1}.footer-interactive ul a{min-height:36px}.footer-manager-description{margin-bottom:12px}}

.manager-section{background:radial-gradient(ellipse at 15% 15%,#383423 0,transparent 60%),#151814;color:#f6edd9;padding:100px 0 110px;border-bottom:1px solid #5b5036}
.manager-layout{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px}.manager-section .eyebrow{font-size:12px;color:#d8b675}.manager-intro h1{font:600 clamp(38px,4.5vw,62px)/1.08 Arial,sans-serif;letter-spacing:-.04em;margin:23px 0 30px}.manager-intro h1 em{font-style:normal;color:#e5c481}.manager-intro p{max-width:540px;font-size:18px;line-height:1.8;color:#d5d1c4;margin:15px 0}
.manager-contact{padding:38px;background:linear-gradient(135deg,#343426,#20251e);border:1px solid #aa8a4c;border-radius:16px;box-shadow:0 20px 55px #0003}.manager-contact h2{font-size:32px;line-height:1.2;letter-spacing:-.02em;margin:18px 0 25px}.manager-contact>a{display:block;text-decoration:none;padding:20px 22px;margin-top:14px;border:1px solid #756744;border-radius:9px;background:#161c14;color:#f5e7c7;transition:transform .3s,border-color .3s,background .3s}.manager-contact>a:hover,.manager-contact>a:focus-visible{transform:translateY(-4px);border-color:#e4bd6f;background:#333725}.manager-contact>a:active{transform:translateY(1px)}.manager-contact>a span{display:block;color:#d3b775;font-size:13px;margin-bottom:9px}.manager-contact>a strong{font-size:clamp(16px,1.6vw,22px);font-weight:500;overflow-wrap:anywhere}.manager-contact>p{font-size:13px;color:#c4c4b5;margin:20px 0 0}
@media(max-width:850px){.manager-section{padding:65px 0}.manager-layout{grid-template-columns:1fr;gap:35px}.manager-intro p{max-width:650px}.manager-contact{max-width:650px}.manager-contact>a strong{font-size:21px}}
@media(max-width:450px){.manager-section{padding:45px 0 55px}.manager-intro h1{font-size:38px}.manager-intro p{font-size:17px}.manager-contact{padding:26px 20px}.manager-contact h2{font-size:29px}.manager-contact>a{padding:18px 15px}.manager-contact>a strong{font-size:17px}}

#coast-map-canvas{z-index:0}.coast-map .leaflet-container{font-family:Arial,sans-serif}.coast-map .leaflet-control-attribution{font-size:11px}.coast-map .leaflet-control-attribution a{color:#21551f}.coast-map .leaflet-control-zoom a{color:#182114}
[data-copy-contact]{cursor:copy}
.contact-toast{position:fixed;z-index:100;left:50%;bottom:26px;transform:translate(-50%,25px);width:min(480px,calc(100% - 32px));padding:20px 52px 20px 22px;background:#20231e;color:#fff6de;border:1px solid #dab970;border-radius:14px;box-shadow:0 14px 60px #0006;opacity:0;visibility:hidden;transition:opacity .25s,transform .35s,visibility .25s}
.contact-toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}.contact-toast strong{display:block;font-size:17px}.contact-toast p{font-size:15px;color:#d9cfb7;margin:5px 0 0;overflow-wrap:anywhere}.contact-toast button{position:absolute;right:10px;top:10px;width:34px;height:34px;border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer}.contact-toast input{width:100%;margin-top:12px;padding:10px;font-size:16px;background:#f9f0d9;color:#151713;border:1px solid #c6a663}
.agency-review{position:relative;background:radial-gradient(ellipse at top right,#4b4125 0,transparent 65%),#171a16;color:#f9f2e2;border:1px solid #aa894b;padding:clamp(28px,5vw,70px);margin-bottom:40px;overflow:hidden;box-shadow:0 20px 50px #31230715}.agency-review:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#bd9145,#f8df9b,#bd9145);transform-origin:left;animation:gold-line 1.1s ease both}.agency-review-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:35px}.agency-review .eyebrow{color:#dfbd74;font-size:12px}.agency-review .stars{color:#dfbd74;letter-spacing:4px;font-size:22px}.agency-review blockquote{margin:0;max-width:970px}.agency-review blockquote>p:first-child{font:400 clamp(28px,3.8vw,49px)/1.22 Georgia,serif;letter-spacing:-.025em;color:#f5deb0;margin:0 0 28px}.agency-review blockquote>p+p{font-size:18px;line-height:1.85;color:#ded7c8;max-width:850px;margin:0}.agency-review footer{border-top:1px solid #706348;margin-top:35px;padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.agency-review footer strong{display:block;font-size:19px}.agency-review footer span{display:block;margin-top:8px;color:#d9b876;font-size:12px;letter-spacing:.13em;text-transform:uppercase}.agency-review footer a{font-size:14px;color:#eee1c6;text-underline-offset:5px}.review-page-section{padding-top:0}
.about-page .portrait-stage.construction{height:560px;background:radial-gradient(ellipse at 50% 45%,#887045 0,#302f26 47%,#191d17 80%);border:1px solid #a88d58;isolation:isolate;box-shadow:0 22px 55px #28231426;border-radius:160px 160px 12px 12px!important}.about-page .portrait-stage.construction img{position:absolute;inset:auto 0 0;width:100%;height:96%;object-fit:contain;object-position:bottom;mix-blend-mode:normal;filter:drop-shadow(0 15px 16px #0005)}.about-page .portrait-stage.construction .portrait-tag{z-index:2;padding:20px 12px;background:#171b16eb}.about-page .portrait-tag span{font-size:11px}
.coast-area{background:#141814;color:#f7f0df;overflow:hidden;border-block:1px solid #645536}.coast-area .eyebrow{color:#d6b371;font-size:12px}.coast-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:40px}.coast-heading h1,.coast-heading h2{font:600 clamp(34px,4.7vw,64px)/1.08 Arial,sans-serif;letter-spacing:-.04em;margin:20px 0 0}.coast-heading em{color:#dcc084;font-style:normal}.coast-heading>p{font-size:17px;color:#c5c9bf;max-width:330px;line-height:1.7}.coast-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:stretch}.coast-selector{min-width:0;background:#20251f;border:1px solid #454d3e;border-radius:16px;overflow:hidden}.coast-photo{height:160px;position:relative;overflow:hidden}.coast-photo img{width:100%;height:100%;object-fit:cover;object-position:center 60%;transition:transform .8s}.coast-selector:hover .coast-photo img{transform:scale(1.06)}.coast-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#151a14c9)}.coast-photo>span{position:absolute;z-index:1;bottom:19px;left:25px;font-size:12px;letter-spacing:.16em;color:#fff}
.coast-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:8px;background:#10140f;border-bottom:1px solid #414b3d}.coast-tabs button{position:relative;padding:16px 6px;border:1px solid transparent;background:transparent;color:#ccd1c6;border-radius:8px;font:600 16px Arial,sans-serif;cursor:pointer;transition:color .25s,background .3s,transform .3s,box-shadow .3s}.coast-tabs button span{font-size:11px;display:block;margin-bottom:6px;font-weight:400;opacity:.8}.coast-tabs button[aria-selected=true]{color:#181b14;background:linear-gradient(130deg,#f2d99c,#c59b50);box-shadow:0 5px 15px #0003;transform:translateY(-2px)}.coast-tabs button:hover{border-color:#bda15f}.coast-panel{padding:26px 27px 18px;min-height:224px}.coast-panel h3{font-size:24px;font-weight:500;margin:0 0 10px;color:#f4e4be}.coast-panel p{font-size:16px;color:#bfc6b8;line-height:1.6;min-height:51px}.coast-panel ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:18px 0 0}.coast-panel li{font-size:14px;padding:7px 11px;background:#2c3429;border:1px solid #4c5945;border-radius:5px}.coast-panel[hidden]{display:none}.coast-enquiry{padding:20px 27px 27px;border-top:1px solid #424b3c}.coast-enquiry p{font-size:14px;color:#bfc6b8;margin:0 0 12px}.coast-enquiry a{font-size:16px;color:#f0ce86}.coast-enquiry a span{font-size:24px;display:inline-block;transition:transform .3s}.coast-enquiry a:hover span{transform:translate(4px,-4px)}
.coast-map{min-width:0;display:flex;flex-direction:column;margin:0;border:1px solid #5e694f;background:#e4e5d7;border-radius:16px;overflow:hidden;box-shadow:0 22px 45px #0003}.coast-map-top{display:flex;justify-content:space-between;gap:12px;padding:18px 22px;background:#273021;color:#e9ecd9;font-size:15px}.coast-map-top>span+span{color:#c4cdb8;font-size:12px}.coast-map #coast-map-canvas{width:100%;min-height:430px;flex:1;border:0;background:#e9eadc}.coast-map figcaption{padding:16px 20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:9px;background:#20271c;color:#c9d1bd;font-size:12px}.coast-map figcaption a{color:#edd095;font-size:13px;text-underline-offset:4px}.coast-credit{color:#929d89;font-size:11px;margin:15px 0 0}.coast-credit a{color:inherit}
.legal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-grid .service-detail{transition:transform .3s,box-shadow .3s,border-color .3s;text-decoration:none}.legal-grid .service-detail:hover{transform:translateY(-5px);border-color:#967638;box-shadow:0 12px 28px #53401614}.legal-grid .service-detail p{margin-top:15px}.legal-grid .service-detail h2{display:flex;justify-content:space-between;gap:20px}
@keyframes gold-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:850px){.coast-heading{display:block}.coast-heading>p{margin-top:23px;max-width:500px}.coast-layout{grid-template-columns:1fr}.coast-map #coast-map-canvas{height:450px;flex:none}.coast-photo{height:175px}.coast-panel{min-height:0}.coast-panel p{min-height:0}}
@media(max-width:600px){.contact-toast{bottom:78px;padding:18px 45px 18px 18px}.agency-review{padding:28px 23px}.agency-review-top{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:25px}.agency-review blockquote>p+p{font-size:16px}.agency-review footer{align-items:flex-start;flex-direction:column}.coast-heading h1,.coast-heading h2{font-size:38px}.coast-map #coast-map-canvas{height:400px}.coast-map-top{padding:16px}.coast-panel{padding:24px 20px}.coast-enquiry{padding:20px}.coast-credit{font-size:11px}.about-page .portrait-stage.construction{height:480px;max-width:400px;margin:auto}.legal-grid{grid-template-columns:1fr}}

/* A raised straight black-and-gold strip separates the light masthead from the scene. */
.hero-master .hero-title-rule{background:transparent}
.hero-master .hero-scenes{-webkit-mask-image:none;mask-image:none}
.hero-master{--divider-top:195px}
.hero-divider{position:absolute;top:calc(var(--divider-top) - 2px);left:0;width:100%;height:16px;z-index:3;pointer-events:none;background:linear-gradient(to bottom,#10130f 0 3px,#a47529 3px 5px,#fff0b7 5px 7px,#e5bc5d 7px 10px,#a5782b 10px 12px,#10130f 12px 16px);box-shadow:0 5px 12px #0006,0 1px 0 #f1d18b}
.hero-divider:after{content:"";position:absolute;top:5px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#fffbe1 26%,#fffbe155 55%,#fffbe1 80%,transparent)}
@media(min-width:1700px){.hero-master{--divider-top:240px}}
@media(max-width:1100px){.hero-master{--divider-top:150px}}
@media(max-width:600px){.hero-master{--divider-top:180px}}
.hero-master .coast-scene{border-left:0}
@media(max-width:600px){.hero-master .material-grid{display:none}}
.hero-master .renovation-scene{background:#1c201c}
.hero-master .material-grid{inset:0;border-top:0;opacity:.36;background-size:145px 125px,145px 125px,100% 100%}
.hero-master .hero-description{background:transparent;padding:0;margin-left:0;color:#fff8e9}
.hero-master .hero-kicker{color:#fff8e9;line-height:1.35}
.hero-master .hero-description>p:nth-child(2){color:#e0d9ca;font-size:17px}
.hero-master .hero-licence{color:#efe1c1;background:transparent;border-color:#a88c52;line-height:1.65;font-size:13px}
.hero-master .hero-licence strong,.hero-master .hero-licence small{font-size:13px}
.hero-master .hero-buttons .button.outline{background:#292e27;color:#fff8e9;border-color:#97804f}
.hero-master .hero-buttons .button.outline:hover{background:#3a4034}
.hero-master .coast-scene:after{background:linear-gradient(180deg,#1c201cbb,transparent 60%,#0c100f99)}
.hero-master .coast-sign{color:#f4d18b;text-shadow:0 2px 14px #000}
.hero-master .coast-sign small{color:#fff5dd}
.insurance-card{display:flex;align-items:flex-start;gap:18px;padding:25px;border:1px solid #827047;border-radius:10px;background:linear-gradient(125deg,#272a22,#171c17);color:#fff3d9;margin:25px 0}
.insurance-card>svg{width:28px;height:28px;flex-shrink:0;color:#efd28d;margin-top:4px}
.insurance-card .eyebrow{color:#e3c37c;font-size:11px;margin-bottom:8px}
.insurance-card h3{font-size:23px;line-height:1.2;letter-spacing:-.025em;margin:0 0 10px}
.insurance-card p,.about .insurance-card p,.site-footer .insurance-card p{font-size:15px;line-height:1.7;color:#f2e8d2;margin:0}
.insurance-card small{display:block;font-size:12px;line-height:1.6;color:#c9c5b5;margin-top:10px}
.about-facts>.insurance-card{margin:0 0 24px}
.site-footer .insurance-card{margin:23px 0 5px;padding:20px 24px;max-width:760px}
.site-footer .insurance-card h3{font-size:20px}
@media(max-width:600px){.hero-master{height:960px}.hero-master .hero-scenes{inset:180px 0 0}.hero-master .hero-description{top:245px}.hero-master .hero-kicker{font-size:21px;max-width:300px}.hero-master .hero-description>p:nth-child(2){font-size:16px;max-width:300px}.hero-master .hero-licence{max-width:285px;padding-bottom:0}.hero-master .coast-scene:after{background:linear-gradient(#1c201c 0%,#1c201c 43%,#1c201cbb 55%,transparent 80%,#0c100f88)}.hero-master .coast-sign{top:593px}.hero-master .coast-sign>span{text-shadow:0 2px 12px #000}.hero-master .hero-location-caption{font-size:8px;max-width:100px}.insurance-card{padding:20px;gap:14px}.insurance-card h3{font-size:21px}}

/* Contact availability: shared across the enquiry and about pages. */
.contact-hours{position:relative;isolation:isolate;overflow:hidden;margin:30px 0;padding:26px;background:radial-gradient(ellipse at 100% 0,#b38b3224,transparent 65%),#151c15;border:1px solid #827044;border-left:3px solid #e1bb65;border-radius:12px;box-shadow:0 16px 32px #0002;color:#f6e9ca;animation:enter .6s ease both;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.contact-hours:hover{transform:translateY(-3px);border-color:#e1bb65;box-shadow:0 18px 38px #0003,0 0 24px #d6ac4912}
.contact-hours:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#ffe6a4,transparent);transform-origin:left;animation:hours-line .9s cubic-bezier(.16,1,.3,1) both;pointer-events:none}
.contact-hours-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.contact-hours-clock{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;border:1px solid #9b8146;border-radius:50%;background:#d4ac5412;color:#eaca83}
.contact-hours-clock svg{width:25px;height:25px}
.contact-hours .contact-hours-kicker{display:block;font-size:10px;font-weight:700;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:#d7b97b;margin-bottom:6px}
.contact-hours h3{font-size:23px;line-height:1.15;letter-spacing:-.025em;margin:0;color:#f5e5bd}
.contact-hours dl{margin:0}.contact-hours dl>div+div{border-top:1px solid #75613d66;margin-top:19px;padding-top:19px}
.contact-hours dt{font-size:12px;color:#bfc0ad;margin-bottom:7px}
.contact-hours dd{margin:0}.contact-hours dd strong{font-size:20px;line-height:1.3;font-weight:600;color:#f0ce86}
.contact-hours dd p{font-size:14px;line-height:1.65;color:#d0d0c2;margin:9px 0 0}
.contact-hours .contact-hours-note{font-size:11px;line-height:1.5;letter-spacing:.02em;color:#c6b88f;border-top:1px solid #75613d66;padding-top:16px;margin:21px 0 0}
.manager-contact .contact-hours{margin:27px 0 0;padding:22px;box-shadow:none}
@keyframes hours-line{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
@media(max-width:600px){.contact-hours{padding:23px 21px}.contact-hours h3{font-size:22px}.contact-hours dd strong{font-size:19px}.manager-contact .contact-hours{padding:20px 17px}}
@media(prefers-reduced-motion:reduce){.contact-hours,.contact-hours:before{animation:none;transition:none}.contact-hours:hover{transform:none}}
html.motion-reduced .contact-hours,html.motion-reduced .contact-hours:before{animation:none;transition:none}
html.motion-reduced .contact-hours:hover{transform:none}

@media(max-width:600px){.contact-toast{bottom:calc(96px + env(safe-area-inset-bottom))}}

/* Reference-led coastal composition; all photography is locally served and credited. */
:root{--muted:#c4c1b6;--line:#5a503d;--coastal-text:#f5efe3;--coastal-gold:#e6c47f}
body{background:#101410;color:var(--coastal-text)}
.site-header{background:#111510f5;border-bottom:1px solid #b99a553e;box-shadow:0 7px 30px #0003}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f1d492;outline-offset:5px}
.page-intro{position:relative;background:radial-gradient(ellipse at 92% 5%,#b58c3021,transparent 65%),#151a14;border-bottom:1px solid #67553466;margin-bottom:44px;padding:65px 0 52px}
.page-intro h1{color:#f3ebdc;font-size:clamp(44px,5.6vw,76px);line-height:1.06}
.page-intro p,.section-heading p,.detail-grid p,.service-detail p,.contact-aside p,.work-content p,.step p,.review-meta{color:#c7c6b9}
.eyebrow,.page-intro .eyebrow,.step .number{color:#e2c081}
.text-link{color:#eed296}
.section{background:transparent}
.home-page .section:not(.about){background:#111611}
.home-page .section-heading h2,.home-page .work-content h3{color:#f4eedf}
.home-page .about{background:radial-gradient(ellipse at 15% 100%,#8c69371d,transparent 60%),#1b2119;border-block:1px solid #8b714438}
.about p,.about .fact p{color:#d0cebf}
.about h2 em{color:#e4c17c}
.about-facts,.fact{border-color:#5b5848}
.fact svg{color:#e3bf75}
.service-detail,.work-panel,.review,.review-hero{background:#1b211a;border-color:#6a5c40;border-radius:12px;color:#f4ecdb;box-shadow:0 16px 40px #0002}
.service-detail h2,.review-hero h2{color:#f4ecdb}
.service-detail .eyebrow{color:#dec080}
.work-graphic{background:linear-gradient(135deg,#353424,#181e17);border-color:#6a5c40}
.work-content{background:#1b211a}
.review blockquote{color:#f4ecdb}
.review footer span{color:#bfc0b2}
.stars,.review-hero .stars{color:#eccd86}
.step{border-top-color:#7f6a42}
.step .number{color:#d6b16b}
.scope-note{color:#d0c6af;border-color:#d7b46f}
.cta{position:relative;background:radial-gradient(ellipse at 100% 100%,#b68d3e26,transparent 65%),#24291e;border-block:1px solid #96784580;color:#f5edda}
.cta .eyebrow{color:#e0be77}
.cta p{color:#d0c5ae}
.cta .button{color:#181b12}
.button.outline{background:#1c241aaa;color:#fff5e2;border-color:#b99a61}
.button.outline:hover{background:#37402b;color:#fff3d5}
.button.orange{background:linear-gradient(115deg,#d2a454,#f2d89b 48%,#ba8f45);color:#16190f;border-color:#d6b66e}
.quote-form{background:#1c221a;border-color:#87754e;border-radius:14px;box-shadow:0 22px 60px #0003}
.quote-form label,.quote-form legend{color:#f4ebd7}
.quote-form .field label span,.form-help{color:#c9c9ba}
.field label,.quote-form legend,.choice,.consent{font-size:15px}
.form-help{font-size:14px}
input[type=text],input[type=tel],input[type=email],textarea{background:#10170f;color:#f8f2e5;border-color:#74745f;border-radius:6px}
.choice{background:#131a11;color:#eee5d1;border-color:#5c644f;min-height:55px}
.choice:has(input:checked){background:#34321f;border-color:#e1bd6c}
.choice input,.consent input{accent-color:#e3bd71}
.contact-aside .callout,.notice,.no-script{background:#2a2c1e;color:#eee2c6;border-color:#d2ae62}
.contact-aside .callout h3{color:#f4e5bd}
.notice a{color:#ffe2a1}
.field-error{color:#ffb6a1}
.form-status.error{background:#422b24;color:#ffd8c9}
.form-status.success{background:#263b28;color:#d1efca}
.legal h2{color:#ebcc8b}
.legal p,.legal li,.legal td{color:#d7d3c5}
.legal table{background:#182016}
.legal th{color:#f0d395;background:#252d1e}
.legal th,.legal td{border-color:#605b45}
.legal .notice{color:#f2e5c7}
.legal-grid .service-detail:hover{background:#262e21;box-shadow:0 16px 35px #0004}
.legal-grid .service-detail p{color:#cbc6b7}
.about-page .portrait-stage.construction{background:radial-gradient(ellipse at 50% 45%,#cba95d2b,transparent 64%),#182016;border-color:#867143}
.about-page .portrait-tag{background:#131b12;color:#f5e5bf;border-color:#c8a969}
.about-page .muted{color:#c7c6b9}
.site-footer{background:#0b100b;border-top:1px solid #62573d}
.site-footer p,.site-footer li{color:#ceccbe}
.footer-bottom{flex-wrap:wrap;color:#c7c2b1}
.skip{background:#f0ce87;color:#11180e}
.proof-strip{background:#151a12;border-block-color:#947641}
.proof-strip .wrap{font-size:12px;letter-spacing:.06em}
.proof-strip small{font-size:12px;color:#bbbbaa}

/* Home has its own composition; inner pages retain content-specific layouts. */
.hero-master.cinematic-hero{height:auto;min-height:730px;background:#15180f;isolation:isolate;overflow:hidden;border-bottom:1px solid #b38c49}
.hero-scene{position:absolute;inset:0;z-index:-4;overflow:hidden}
.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:50% 63%;filter:sepia(.58) saturate(1.5) brightness(.78)}
.hero-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0c100de8 0%,#10150dc9 21%,transparent 48%,#0c120b66 85%,#0c100ce6 100%),linear-gradient(90deg,#090f0ee6 0%,#0c130ee0 21%,#0b100d72 40%,transparent 69%),radial-gradient(ellipse at 90% 30%,#e6a34438,transparent 58%)}
.cinematic-inner{position:relative;max-width:1560px;padding-top:27px}
.hero-masthead{position:relative;z-index:5}
.cinematic-hero .title-rule{font-size:12px;color:#eac980;letter-spacing:.15em;margin:0 0 12px}
.cinematic-hero .hero-title{position:relative;font-size:clamp(68px,9.9vw,157px);line-height:1.12;font-family:FixupBlackletter,Georgia,serif;font-weight:400;letter-spacing:-.025em;white-space:nowrap;text-align:center;margin:0;padding:0 0 12px;color:#171b11;-webkit-text-stroke:1px #ebc574;text-shadow:1px 1px 0 #fff0b5,3px 4px 0 #795a28,5px 7px 0 #10170d,0 3px 22px #000b}
.hero-title-base{display:block}
.hero-title-word{position:relative;display:inline-block;white-space:nowrap}
.hero-letter{display:inline-block;transform-origin:50% 65%;transform:perspective(450px) translate3d(0,calc(var(--letter-pop,0) * -5px),calc(var(--letter-pop,0) * 14px)) scale(calc(1 + var(--letter-pop,0) * .025));transition:transform 160ms cubic-bezier(.2,.8,.2,1),text-shadow 160ms ease-out,color 160ms ease-out}
.hero-title-base .hero-letter{color:color-mix(in srgb,#171b11 calc(100% - var(--letter-light,0) * 100%),#ffe6a0);text-shadow:1px 1px 0 #fff0b5,3px 4px 0 #795a28,5px calc(7px + var(--letter-pop,0) * 4px) 0 #10170d,0 3px 22px #000b}
.hero-gold-line{height:3px;background:linear-gradient(90deg,transparent,#aa7c2e 10%,#ffe6a5 48%,#ae7f31 90%,transparent);box-shadow:0 1px 0 #111b0e,0 2px 14px #dfb24d55;transform-origin:left;margin:7px 0 0}
.hero-layout{position:relative;display:grid;grid-template-columns:.95fr 1.34fr .75fr;gap:12px;min-height:490px;align-items:center}
.cinematic-copy{position:relative;z-index:3;padding:32px 0 50px;align-self:center}
.cinematic-copy h2{font-size:clamp(22px,1.82vw,28px);line-height:1.3;letter-spacing:-.035em;text-transform:uppercase;color:#fff8ea;max-width:400px}
.cinematic-copy>p{font-size:17px;line-height:1.6;margin:22px 0;color:#f0ecde}
.cinematic-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:26px;max-width:350px}
.cinematic-actions .button{font-size:14px;min-height:52px;padding:14px 17px}
.cinematic-actions .button.quote-cta{padding:11px 15px}
.cinematic-credentials{border-top:1px solid #c29b5188;margin-top:26px;padding-top:15px;display:grid;gap:5px;color:#e3d9c3;font-size:13px;line-height:1.6}
.cinematic-credentials strong{font-weight:600}
.hero-daniel{position:relative;z-index:2;align-self:end;margin:13px -22px 0;width:calc(100% + 44px);height:535px;display:flex;justify-content:center;align-items:flex-end}
.hero-daniel>img{display:block;object-fit:contain;object-position:center bottom;width:100%;height:100%;filter:drop-shadow(9px 8px 20px #0005)}
.hero-daniel figcaption{position:absolute;bottom:19px;left:50%;transform:translateX(-50%);padding:15px 26px;background:linear-gradient(145deg,#1a2119f2,#10160ff5);border:1px solid #d0aa62;border-top-width:2px;box-shadow:0 8px 28px #0005;text-align:center;white-space:nowrap}
.hero-daniel figcaption span{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#e9c57e;margin-bottom:6px}
.hero-daniel figcaption strong{font-family:Georgia,serif;font-size:29px;line-height:1.1;font-weight:400;letter-spacing:0;color:#fff1d5}
.hero-coast-note{align-self:start;padding-top:98px;text-align:center;position:relative;z-index:2;text-shadow:0 2px 10px #0009}
.hero-coast-note>span{font-family:Georgia,serif;font-size:clamp(31px,3.7vw,55px);font-style:italic;letter-spacing:-.04em;color:#ffe0a0;white-space:nowrap}
.hero-coast-note>p{font-size:12px;letter-spacing:.15em;line-height:1.7;text-transform:uppercase;color:#fff5dd;margin-top:14px}
.hero-photo-credit{position:relative;z-index:3;padding:4px 0 13px;color:#d6d2c4;text-align:right;font-size:12px;line-height:1.5}
.hero-photo-credit a{text-underline-offset:3px}
.hero-fronds{position:absolute;z-index:-2;pointer-events:none}
.hero-fronds{width:390px;height:610px;top:100px;background:url('/assets/palm-fronds.jpg') center bottom/cover no-repeat;filter:grayscale(1) brightness(5) contrast(2.4);mix-blend-mode:multiply;opacity:.8;transform:rotate(180deg);mask-image:linear-gradient(90deg,transparent,#000 25%,#000 80%,transparent),linear-gradient(0deg,transparent,#000 16%,#000 84%,transparent);mask-composite:intersect}
.hero-fronds-left{left:-105px}
.hero-fronds-right{right:-150px;top:80px;transform:rotate(180deg) scaleX(-1)}

/* Motion enhances already-visible content and runs once on arrival. */

 .cinematic-hero .hero-title{animation:coastal-title-arrive .9s cubic-bezier(.16,1,.3,1) both}
 .cinematic-hero .hero-gold-line{animation:coastal-line-arrive 1s .2s cubic-bezier(.16,1,.3,1) both}
 .cinematic-copy{animation:coastal-copy-arrive .85s .22s cubic-bezier(.16,1,.3,1) both}
 .hero-daniel{animation:coastal-copy-arrive .95s .1s cubic-bezier(.16,1,.3,1) both}
 .hero-scene img{animation:coastal-scene-arrive 1.8s ease-out both}

@keyframes coastal-title-arrive{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:translateY(0)}}
@keyframes coastal-line-arrive{from{opacity:.2;transform:scaleX(.12)}to{opacity:1;transform:scaleX(1)}}
@keyframes coastal-copy-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes coastal-scene-arrive{from{transform:scale(1.025)}to{transform:scale(1)}}
.scroll-accent{position:relative}
.scroll-accent:after{content:'';position:absolute;left:0;bottom:-15px;width:82px;height:2px;background:linear-gradient(90deg,#c69e53,#f6dda2,#c69e53);transform-origin:left;pointer-events:none}
.scroll-accent.accent-arrived:after{animation:coastal-accent-sweep .85s cubic-bezier(.16,1,.3,1) both}
@keyframes coastal-accent-sweep{0%{transform:scaleX(.2);opacity:.25}60%{opacity:1;box-shadow:0 0 12px #ebc67e88}100%{transform:scaleX(1);opacity:1;box-shadow:none}}

@media(max-width:1100px){
 .hero-master.cinematic-hero{min-height:0}
 .cinematic-inner{padding-top:24px}
 .cinematic-hero .hero-title{font-size:9.75vw}
 .hero-layout{grid-template-columns:.95fr 1.4fr .25fr;gap:15px;min-height:440px}
 .hero-daniel{height:480px;margin-inline:-10px;width:calc(100% + 20px)}
 .hero-coast-note{position:absolute;right:0;top:20px;padding:0;opacity:.9}
 .hero-coast-note>span{font-size:29px}.hero-coast-note>p{display:none}
 .cinematic-copy h2{font-size:23px}.cinematic-copy>p{font-size:16px}
 .cinematic-copy{padding-bottom:26px}.cinematic-actions{gap:12px}
}
@media(max-width:760px){
 .hero-title-base .hero-letter{text-shadow:inherit}
 .cinematic-hero .hero-layout{grid-template-columns:1fr;gap:0;min-height:0}
 .cinematic-inner{padding:20px 6% 0}
 .cinematic-hero .title-rule{font-size:11px;letter-spacing:.1em;margin-bottom:13px}
 .cinematic-hero .hero-title{font-size:clamp(36px,12.1vw,86px);letter-spacing:-.045em;white-space:normal;line-height:1.13;padding-bottom:12px;-webkit-text-stroke:.7px #edc776;text-shadow:1px 1px #ffe6a0,2px 3px #715725,3px 5px #151b11}
 .hero-gold-line{height:2px;margin-top:4px}
 .cinematic-copy{text-align:center;padding:25px 0 10px;max-width:560px;margin:auto;width:100%}
 .cinematic-copy h2{font-size:clamp(21px,5.7vw,29px);max-width:none;line-height:1.3}
 .cinematic-copy>p{font-size:16px;margin:13px 0 17px;line-height:1.55}
 .cinematic-actions{justify-content:center;max-width:none;margin-top:0;gap:12px}
 .cinematic-actions .button{flex:1;min-width:0;min-height:49px;font-size:13px;padding:12px 10px;gap:9px}
 .cinematic-actions .button.quote-cta{padding:11px 10px;gap:8px}.cinematic-actions .quote-arrow{width:25px;height:25px;flex:none}
 .cinematic-credentials{margin:22px auto 0;padding-top:12px;font-size:12px;max-width:380px;gap:1px}
 .hero-daniel{width:100%;max-width:460px;height:380px;margin:8px auto 0}
 .hero-daniel figcaption{bottom:12px;padding:12px 24px}
 .hero-daniel figcaption strong{font-size:27px}
 .hero-coast-note{display:none}
 .hero-scene img{object-position:61% 75%;filter:sepia(.26) saturate(1.1) brightness(.72)}
 .hero-scrim{background:linear-gradient(180deg,#0b100eee 0%,#0c130de6 36%,#0c100d22 69%,#0d130cb8 100%),linear-gradient(90deg,#10180f70,transparent 60%)}
 .hero-photo-credit{text-align:center;font-size:12px;padding:9px 0 12px}
 .page-intro{padding:39px 0 40px;margin-bottom:32px}.page-intro h1{font-size:clamp(39px,10vw,56px)}
 .proof-strip .wrap{font-size:11px}.proof-strip small{font-size:11px}
 .hero-scene img{animation:none}
 .hero-fronds{width:230px;height:430px;top:310px;opacity:.65}.hero-fronds-left{left:-115px}.hero-fronds-right{right:-120px;top:295px}
}
@media(max-width:380px){.cinematic-hero .title-rule{font-size:10px}.cinematic-actions .button,.cinematic-actions .button.quote-cta{font-size:12px;gap:6px;padding:11px 8px}.cinematic-actions .quote-arrow{width:23px;height:23px}.hero-daniel{height:335px}.cinematic-credentials{font-size:12px}.cinematic-copy{padding-top:22px}}

/* A visible site setting controls motion, rather than silently suppressing the design. */
.footer-bottom{flex-wrap:wrap;gap:16px}
.motion-toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:9px 13px;border:1px solid #72603c;border-radius:5px;background:#192016;color:#efd59d;font:inherit;font-size:13px;cursor:pointer;transition:background 180ms,border-color 180ms}
.motion-toggle[hidden]{display:none}
.motion-toggle:hover{background:#2c3020;border-color:#d3ad63}
.motion-toggle:focus-visible{outline:2px solid #f3cf86;outline-offset:4px}
.motion-toggle-track{position:relative;display:block;width:32px;height:18px;border-radius:12px;background:#ba914a;box-shadow:inset 0 1px 4px #0008}
.motion-toggle-track:after{content:'';position:absolute;top:3px;left:17px;width:12px;height:12px;border-radius:50%;background:#fff1c6;transition:left 180ms,background 180ms}
.motion-toggle[aria-pressed=true] .motion-toggle-track{background:#59614d}
.motion-toggle[aria-pressed=true] .motion-toggle-track:after{left:3px;background:#c3c8b5}
html.motion-reduced{scroll-behavior:auto!important}
.motion-reduced *,.motion-reduced *:before,.motion-reduced *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.motion-reduced .hero-letter{transform:none!important}
.motion-reduced .will-reveal{opacity:1!important;transform:none!important}
.motion-reduced .nav-links>a:hover,.motion-reduced .nav-links>a:focus-visible,.motion-reduced .nav-combined-trigger:hover,.motion-reduced .nav-combined-trigger:focus-visible,.motion-reduced .nav-combined-panel>a:hover,.motion-reduced .footer-interactive li>a:hover,.motion-reduced .button:hover,.motion-reduced .button:active{transform:none!important}

/* Section signposts carry the same dimensional lettering as the Home masthead. */
.section-wayfinder{display:flex;align-items:baseline;gap:16px;margin:0 0 26px;min-width:0}
.wayfinder-number{flex:none;color:#bea16d;font:700 12px/1 Arial,sans-serif;letter-spacing:.12em}
.gold-heading,.section-wayfinder .gold-heading,.page-intro h1.gold-heading,.catalog-heading h1.gold-heading,.coast-heading h1.gold-heading,.layer-intro h1.gold-heading,.manager-intro h1.gold-heading{position:relative;display:block;width:fit-content;max-width:100%;margin:14px 0 22px;padding:4px 0 8px;font-family:FixupBlackletter,Georgia,serif;font-weight:400;font-style:normal;font-size:clamp(52px,7.5vw,94px);line-height:1.12;letter-spacing:.015em;color:#f0cd82;text-transform:none;text-shadow:0 1px 0 #ffe4a1,2px 3px 0 #7c592d,4px 5px 0 #050704,0 0 22px #d1a6591f;-webkit-text-stroke:.35px #d7ac61;overflow-wrap:break-word}
.section-wayfinder .gold-heading{font-size:clamp(42px,4.8vw,66px);margin:0;padding:4px 0 8px;flex:0 1 auto}
.gold-heading-word{position:relative;display:inline-block;white-space:nowrap}
.gold-heading-letter{display:inline-block;transform-origin:50% 70%;color:color-mix(in srgb,#f0cd82 calc(100% - var(--heading-shade,0) * 88%),#34281c);transform:perspective(450px) translate3d(0,calc(var(--heading-pop,0) * -8px),calc(var(--heading-pop,0) * 24px)) scale(calc(1 + var(--heading-pop,0) * .06));text-shadow:0 1px 0 #ffe4a1,2px 3px 0 #7c592d,4px calc(5px + var(--heading-pop,0) * 5px) 0 #050704,0 0 22px #d1a6591f;transition:transform 190ms cubic-bezier(.2,.8,.2,1),color 180ms ease-out,text-shadow 190ms ease-out}
.home-page .agency-review{margin:0 0 28px}
.layer-intro .layer-heading-note{margin:0 0 18px;font-size:20px;color:#e6c88d}
.motion-reduced .gold-heading-letter{transform:none!important}
.section-wayfinder .wayfinder-number.gold-heading{flex:none;margin:0;font-size:clamp(33.6px,3.84vw,52.8px);white-space:nowrap;letter-spacing:.015em}
@media(max-width:700px){.section-wayfinder .wayfinder-number.gold-heading{font-size:clamp(30.4px,8vw,38.4px)}}
@media(max-width:700px){.section-wayfinder{gap:12px;margin-bottom:20px}.section-wayfinder .gold-heading{font-size:clamp(38px,10vw,48px)}.gold-heading,.section-wayfinder .gold-heading,.page-intro h1.gold-heading,.catalog-heading h1.gold-heading,.coast-heading h1.gold-heading,.layer-intro h1.gold-heading,.manager-intro h1.gold-heading{font-size:clamp(40px,10.7vw,62px);letter-spacing:0}.section-wayfinder .gold-heading{font-size:clamp(38px,10vw,48px)}.wayfinder-number{font-size:11px}}
.enquiry-progress{position:relative;isolation:isolate;margin:0 0 28px;padding:23px;border:1px solid #a88745;border-radius:12px;background:radial-gradient(ellipse at 85% 0,#77612b24,transparent 65%),linear-gradient(145deg,#20251b,#11180f);box-shadow:inset 0 1px #f4d78c25,0 12px 32px #0003}
.enquiry-progress-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.enquiry-progress-kicker{margin:0 0 6px;color:#d8bc7c;font-size:.75rem;font-weight:700;letter-spacing:.12em}
.quote-form .enquiry-progress h2{margin:0;color:#f3ddaa;font-size:clamp(1.65rem,3vw,2.1rem);line-height:1.15;letter-spacing:-.025em}
.enquiry-progress-score{text-align:right;flex-shrink:0}
.enquiry-progress-score strong{display:block;font-size:2rem;line-height:1.1;color:#ffe3a1;font-variant-numeric:tabular-nums;text-shadow:0 2px #000,0 0 20px #e6be5c26}
.enquiry-progress-score>span{display:block;margin-top:5px;font-size:.875rem;color:#d1d0bb}
.enquiry-progress-track{height:12px;border:1px solid #6e6144;border-radius:20px;background:#050a06;box-shadow:inset 0 2px 4px #0008;overflow:hidden}
.enquiry-progress-fill{position:relative;display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a77d36,#ebc775 45%,#fff2b5 80%,#e9bb62);box-shadow:0 0 16px #efc86588;transition:width .65s cubic-bezier(.2,.8,.25,1)}
.enquiry-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,#fff8 50%,transparent 70%);transform:translateX(-130%);animation:enquiry-bar-sheen 4s ease-in-out infinite}
@keyframes enquiry-bar-sheen{0%,35%{transform:translateX(-130%)}70%,100%{transform:translateX(130%)}}
.enquiry-milestones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 8px;list-style:none;margin:20px 0 17px;padding:0}
.enquiry-milestone{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:0;background:none;border:0;color:#bdc1ae;text-align:left;cursor:pointer;font:inherit;transition:color .25s,transform .25s}
.enquiry-milestones>li:first-child .enquiry-milestone{cursor:default}
.enquiry-milestone-stamp{position:relative;display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid #666c51;border-radius:50%;background:#11170f;box-shadow:inset 0 1px #fff1;transition:background .3s,border-color .3s,box-shadow .3s;color:#b1b8a1}
.enquiry-stamp-number{font-size:.75rem;font-weight:700;transition:opacity .2s,transform .3s}
.enquiry-stamp-check{position:absolute;width:19px;height:19px;opacity:0;transform:scale(.5);transition:opacity .25s,transform .35s cubic-bezier(.2,1.3,.5,1)}
.enquiry-milestone-label{font-size:.875rem;font-weight:600;line-height:1.3}
.enquiry-milestone-label small{display:block;font-size:.75rem;font-weight:400;opacity:.85;margin-top:2px}
.enquiry-milestones .is-complete .enquiry-milestone{color:#f1d698}
.enquiry-milestones .is-complete .enquiry-milestone-stamp{background:linear-gradient(135deg,#ffe7a6,#ba8c3c);border-color:#e9c775;color:#171c12;box-shadow:inset 0 1px #fff9,0 3px 10px #0006,0 0 12px #e5c37522}
.enquiry-milestones .is-complete .enquiry-stamp-number{opacity:0;transform:scale(.5)}
.enquiry-milestones .is-complete .enquiry-stamp-check{opacity:1;transform:scale(1)}
.enquiry-milestones .is-next .enquiry-milestone{color:#fff0c7}
.enquiry-milestones .is-next .enquiry-milestone-stamp{border-color:#e6c47f;box-shadow:0 0 0 3px #e6c47f19;animation:enquiry-next-pulse 2.8s ease-in-out infinite}
@keyframes enquiry-next-pulse{0%,100%{box-shadow:0 0 0 3px #e6c47f15}50%{box-shadow:0 0 0 5px #e6c47f35,0 0 16px #e6c47f20}}
.enquiry-milestone:focus-visible{outline:2px solid #ffe1a1;outline-offset:5px;border-radius:4px}
@media(hover:hover){button.enquiry-milestone:hover{color:#fff2bc;transform:translateY(-2px)}button.enquiry-milestone:hover .enquiry-milestone-stamp{border-color:#f1d698;box-shadow:0 0 15px #d7ad5a40}}
button.enquiry-milestone:active{transform:scale(.96)}
.enquiry-progress-message{margin:0;padding-top:15px;border-top:1px solid #a8874533;color:#dedbc7;font-size:.875rem;line-height:1.5}
.enquiry-progress.is-ready{border-color:#eaca80;box-shadow:inset 0 1px #f4d78c25,0 0 25px #e3bc5220}
.enquiry-email-option{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;margin-top:5px}
.enquiry-email-option button{min-height:36px;border:0;padding:3px 0;background:none;color:#eed091;font-size:.875rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.enquiry-email-option button:focus-visible{outline:2px solid #eed091;outline-offset:3px}
.enquiry-email-option>span{color:#ddd3b6;font-size:.875rem;line-height:1.5}
.enquiry-email-option [hidden]{display:none}
.enquiry-progress .sr-only{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:600px){.enquiry-progress{padding:18px 14px;margin-bottom:25px}.enquiry-milestones{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.enquiry-progress-kicker{font-size:.75rem;letter-spacing:.07em}.enquiry-progress-score strong{font-size:1.9rem}.enquiry-progress-score>span{font-size:.75rem}.enquiry-progress-top{gap:10px}.enquiry-milestone-label{font-size:.875rem}}

.portfolio-page .page-intro{margin-bottom:0;padding:72px 0 58px;background:#171815;color:#f7ecd4;border-bottom:1px solid #8c713d}
.portfolio-page .page-intro h1{max-width:none}
.portfolio-page .page-intro p{max-width:710px;color:#d9cfbd}
.portfolio-page .page-intro .eyebrow,.portfolio-page .page-intro .eyebrow a{color:#d6b672}
.portfolio-page .section:has(.portfolio-experience){padding:0;background:#f2eee4}
.portfolio-experience{padding-bottom:100px;color:#242018}
.section:has(.portfolio-experience){container-type:inline-size}
@media(max-width:380px){.portfolio-section-heading{flex-wrap:wrap}.portfolio-rail-controls{margin-left:auto}}
.portfolio-jump{display:flex;align-items:center;gap:24px;padding:22px 0;border-bottom:1px solid #bcae92;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
.portfolio-jump span{margin-right:auto;font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#866c3b;font-weight:700}
.portfolio-jump a{font-size:13px;color:#29251c;text-decoration:none;border-bottom:1px solid transparent;padding-bottom:3px}
.portfolio-jump a:hover,.portfolio-jump a:focus-visible{border-color:#a77c32}
.portfolio-feature{margin-top:42px;display:grid;grid-template-columns:1fr 1.03fr;min-height:590px;background:#191b19;color:#f7f0e2;border:1px solid #8d7549;box-shadow:15px 16px 0 #dacba9}
.portfolio-feature-copy{padding:clamp(34px,5vw,78px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.portfolio-feature-copy:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,#c6a3650c 1px,transparent 1px),linear-gradient(#c6a3650c 1px,transparent 1px);background-size:65px 65px;pointer-events:none}
.portfolio-feature-copy>*{position:relative}
.portfolio-feature .eyebrow,.portfolio-process .eyebrow{color:#dfbd78}
.portfolio-feature h2{font-size:clamp(49px,5.6vw,88px);line-height:.97;letter-spacing:-.055em;margin:27px 0}
.portfolio-feature h2 em{font-family:Georgia,serif;font-weight:400;color:#dfbd78}
.portfolio-feature p{font-size:17px;line-height:1.65;color:#d1cabb;max-width:470px}
.portfolio-feature-rule{display:flex;flex-wrap:wrap;gap:8px 13px;border-top:1px solid #806c48;margin-top:46px;padding-top:19px;font-size:12px;color:#d6c6aa}
.portfolio-feature-rule span:nth-child(odd){color:#dfbd78;font-weight:700}
.portfolio-feature-image{position:relative;display:block;min-height:590px;overflow:hidden;border-left:1px solid #8d7549}
.portfolio-feature-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 43%;transition:transform .6s ease}
.portfolio-feature-image:hover img{transform:scale(1.025)}
.portfolio-feature-image>span,.portfolio-process-image>span{position:absolute;bottom:24px;left:25px;background:#161816e8;border:1px solid #b89b62;color:#f6e2b5;padding:10px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.13em}
.portfolio-section,.portfolio-before-after{padding-top:112px;scroll-margin-top:110px}
.portfolio-section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:33px}
.portfolio-section-heading h2{font-family:Georgia,serif;font-size:clamp(43px,5vw,72px);font-weight:400;line-height:1;letter-spacing:-.05em;margin:15px 0}
.portfolio-section-heading p{max-width:680px;color:#5c584e;line-height:1.65;margin:0}
.portfolio-rail-controls{display:flex;gap:8px;flex:none}
.portfolio-rail-controls button{width:48px;height:48px;border:1px solid #8f754a;background:#f2eee4;color:#201c16;font-size:23px;cursor:pointer;transition:background .2s,color .2s}
.portfolio-rail-controls button:hover,.portfolio-rail-controls button:focus-visible{background:#1d211d;color:#e8c887}
.portfolio-rail,.portfolio-review-rail{display:flex;gap:21px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:0 2px 21px;scrollbar-color:#b29251 #dfd6c4}
.portfolio-photo-card{width:clamp(230px,28vw,350px);flex:0 0 auto;scroll-snap-align:start;margin:0;min-width:0}
.portfolio-photo-card>a{display:block;position:relative;overflow:hidden;background:#d8d0bc;border:1px solid #b7aa91;aspect-ratio:4/5}
.portfolio-photo-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease,filter .55s ease}
.portfolio-photo-card>a:hover img,.portfolio-photo-card>a:focus-visible img{transform:scale(1.035)}
.portfolio-photo-open{position:absolute;right:14px;bottom:14px;width:36px;height:36px;display:grid;place-items:center;background:#1b1c1add;color:#f4dba4;border:1px solid #c5a66b;font-size:21px}
.portfolio-photo-card figcaption{display:flex;align-items:center;gap:16px;padding:15px 2px 3px;border-bottom:1px solid #bea982;min-height:70px}
.portfolio-photo-card figcaption strong{font-size:15px;font-weight:600;line-height:1.25}
.portfolio-photo-index{font-size:10px;color:#816335;letter-spacing:.12em;white-space:nowrap}
.portfolio-transformation{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:14px}
.portfolio-transformation figure{margin:0;background:#171917;border:1px solid #9e8757;min-width:0}
.portfolio-transformation figure>a{display:block;height:440px;overflow:hidden}
.portfolio-transformation img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 46%;transition:transform .55s ease}
.portfolio-transformation figure>a:hover img,.portfolio-transformation figure>a:focus-visible img{transform:scale(1.025)}
.portfolio-transformation figcaption{display:flex;justify-content:space-between;gap:10px;padding:17px;color:#f0e6d1;font-size:14px}
.portfolio-transformation figcaption span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#dbbb7a}
.portfolio-transformation-after{box-shadow:6px 6px 0 #be9854}
.portfolio-process{display:grid;grid-template-columns:1fr 1fr;min-height:570px;margin:110px calc((100% - 100cqw)/2) 0;background:#172027;color:#f1efe9;scroll-margin-top:95px}
.portfolio-process-story{padding:clamp(42px,6vw,95px);display:flex;flex-direction:column;justify-content:center}
.portfolio-process h2{font-family:Georgia,serif;font-size:clamp(45px,5.4vw,78px);font-weight:400;line-height:1.04;letter-spacing:-.052em;margin:19px 0 28px}
.portfolio-process p{max-width:550px;color:#d4dde1;font-size:17px;line-height:1.65}
.portfolio-process-count{font-size:11px;color:#a7c4d8;letter-spacing:.14em;text-transform:uppercase;border-top:1px solid #607786;padding-top:19px;margin-top:36px}
.portfolio-process-image{position:relative;display:block;min-height:570px;overflow:hidden}
.portfolio-process-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 50%;transition:transform .6s ease}
.portfolio-process-image:hover img{transform:scale(1.025)}
.portfolio-process-gallery{padding-top:78px}
.portfolio-photo-card-process>a{aspect-ratio:4/4.6;background:#346cc0}
.portfolio-reviews{padding-top:116px;scroll-margin-top:110px}
.portfolio-review-rail{gap:17px}
.portfolio-review{box-sizing:border-box;flex:0 0 clamp(280px,36vw,450px);scroll-snap-align:start;margin:0;min-height:285px;padding:29px;display:flex;flex-direction:column;background:#e7d9b9;border:1px solid #a78b59}
.portfolio-review-stars{color:#6f531c;letter-spacing:.15em}
.portfolio-review p{font-family:Georgia,serif;font-size:clamp(21px,2.1vw,28px);line-height:1.32;letter-spacing:-.025em;margin:20px 0 27px}
.portfolio-review footer{display:flex;flex-direction:column;gap:3px;margin-top:auto;font-size:13px}
.portfolio-review footer span{font-size:11px;color:#695e4c}
.portfolio-review-source{font-size:12px;color:#655e51;margin:17px 0 0}
.portfolio-review-source a{color:#594017;text-underline-offset:3px}
@media(max-width:900px){.portfolio-feature{grid-template-columns:1fr 1fr;min-height:490px}.portfolio-feature-image{min-height:490px}.portfolio-transformation figure>a{height:350px}.portfolio-process,.portfolio-process-image{min-height:500px}.portfolio-section,.portfolio-before-after{padding-top:85px}}
@media(max-width:650px){.portfolio-page .page-intro{padding:52px 0 46px}.portfolio-experience{padding-bottom:70px}.portfolio-jump{gap:20px;padding:18px 0}.portfolio-jump span{display:none}.portfolio-feature{grid-template-columns:1fr;margin-top:25px;box-shadow:7px 8px 0 #dacba9}.portfolio-feature-copy{padding:35px 28px}.portfolio-feature h2{font-size:clamp(51px,12vw,72px);margin:18px 0}.portfolio-feature p{font-size:16px}.portfolio-feature-rule{margin-top:25px}.portfolio-feature-image{min-height:380px;border-left:0;border-top:1px solid #8d7549}.portfolio-section,.portfolio-before-after{padding-top:75px}.portfolio-section-heading{align-items:start;gap:12px}.portfolio-section-heading h2{font-size:46px}.portfolio-section-heading p{font-size:15px}.portfolio-rail-controls{align-self:end}.portfolio-rail-controls button{width:38px;height:38px;font-size:20px}.portfolio-photo-card{width:min(78vw,300px)}.portfolio-transformation{grid-template-columns:1fr 1fr;gap:9px}.portfolio-transformation figure>a{height:245px}.portfolio-transformation-after{grid-column:1/-1}.portfolio-transformation-after>a{height:430px!important}.portfolio-transformation figcaption{font-size:12px;padding:11px;display:block}.portfolio-transformation figcaption span{display:block;margin-bottom:5px}.portfolio-process{grid-template-columns:1fr;margin-top:80px;min-height:0}.portfolio-process-story{padding:50px 6%}.portfolio-process h2{font-size:52px}.portfolio-process-image{min-height:470px}.portfolio-process-gallery{padding-top:67px}.portfolio-reviews{padding-top:80px}.portfolio-review{flex-basis:83vw;min-height:280px;padding:25px}}
@media(prefers-reduced-motion:reduce){.portfolio-feature-image img,.portfolio-photo-card img,.portfolio-transformation img,.portfolio-process-image img{transition:none}}
