@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@400;500;600;700;800&family=Source+Sans+3:wght@400;500;600&display=swap');
:root{--ink:#201d19;--paper:#f8f6f1;--gold:#e7a54f;--muted:#bcb6ac;--line:#ffffff24}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font:18px/1.6 'Source Sans 3',sans-serif}h1,h2,h3,.brand,.button{font-family:'Bricolage Grotesque',sans-serif}h1,h2,h3{line-height:1.07;letter-spacing:-.035em;margin:0;text-wrap:balance}h1{font-size:clamp(64px,8.5vw,128px);font-weight:700}h1 em{font-style:normal;color:var(--gold)}h2{font-size:clamp(36px,4.2vw,64px);font-weight:600}h3{font-size:28px;font-weight:600}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}header{position:fixed;top:0;left:0;right:0;z-index:20;padding:20px 5%;display:flex;justify-content:space-between;align-items:center;background:#201d19eb;backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand{font-size:29px;font-weight:800;line-height:1}.brand span{display:block;font:9px/1.4 'Source Sans 3',sans-serif;letter-spacing:.16em;margin-top:7px}nav{display:flex;gap:30px;align-items:center;font-size:15px}.nav-cta{border:1px solid #e7a54f77;padding:10px 18px;border-radius:5px}.menu{display:none}.guided-page{position:relative;isolation:isolate}.scroll-beam{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.beam-track{stroke:#cb9656;stroke-width:1;opacity:.13}.beam-trail{stroke:var(--gold);stroke-width:2;filter:drop-shadow(0 0 5px #e7a54f88)}.beam-tip{fill:#ffe3b6;stroke:#d89238;stroke-width:2;filter:drop-shadow(0 0 6px #e7a54f)}section{position:relative;padding:120px 6%}section>div:not(.hero-overlay){position:relative;z-index:3}.hero{min-height:100svh;display:grid;place-items:center;text-align:center;padding-top:150px;padding-bottom:150px;overflow:hidden}.hero-photo,.hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-photo{image-rendering:auto;object-position:center 38%}.hero-overlay{background:linear-gradient(180deg,#201d19b8 0%,#201d198a 42%,#201d19bb 65%,#201d19ed 84%,var(--ink) 100%)}.hero-content{max-width:1120px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.19em;color:var(--gold);margin:0 0 24px;text-transform:uppercase}.intro{font-size:22px;line-height:1.55;max-width:740px;margin:26px auto 0;color:var(--muted);text-wrap:pretty}.hero .intro{color:#e4dfd7}.actions{display:flex;justify-content:center;gap:16px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--gold);border:1px solid var(--gold);color:var(--ink);border-radius:6px;padding:16px 24px;font-weight:600;font-size:16px;cursor:pointer;transition:transform .2s}.button:hover{transform:translateY(-2px)}.secondary{background:#201d1933;color:var(--paper);border-color:#ffffff44}.wrap{max-width:1250px;margin:auto;text-align:center}.narrow{max-width:780px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--line);margin-top:50px;padding-top:32px}.facts strong,.facts span{display:block}.facts strong{font:500 25px 'Bricolage Grotesque';color:var(--gold)}.facts span{font-size:15px;color:var(--muted);margin-top:10px}.light{background:var(--paper);color:var(--ink)}.light .eyebrow{color:#9d621f}.light .intro{color:#67625b}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:58px;text-align:left}.services article{border-top:1px solid #b6a99a;padding:30px 0}.number{font-size:11px;letter-spacing:.15em;color:#8d602a}.services h3{margin-top:25px}.services p{font-size:17px;color:#656059;min-height:110px}.services a,.text-link{font-weight:600;font-size:16px;border-bottom:1px solid #bd966b;padding-bottom:7px}.more-services{margin-top:34px;border-top:1px solid #ddd5c9;padding-top:30px}.more-services span{font-size:13px;color:#777}.more-services p{margin:10px 0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:60px;text-align:left}figure{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}figure img{display:block;width:100%;height:340px;object-fit:cover}figcaption{padding:28px}figcaption span{font-size:11px;letter-spacing:.15em;color:var(--gold)}figcaption h3{font-size:25px;margin:14px 0}figcaption p{margin:0;color:var(--muted);font-size:16px}.comparison{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;margin-top:60px;border-top:1px solid var(--line);padding-top:50px;text-align:left}.comparison>img{width:100%;height:360px;object-fit:contain;background:#161411;border-radius:8px}.comparison p{color:var(--muted)}.switch{display:inline-flex;gap:4px;border:1px solid var(--line);padding:4px;border-radius:7px;margin-top:15px}.switch button{background:none;border:0;color:var(--paper);padding:9px 25px;cursor:pointer;border-radius:4px}.switch .active{background:var(--gold);color:var(--ink)}.portrait{display:grid;grid-template-columns:320px 1fr;text-align:left;gap:70px;align-items:center;max-width:950px;margin:55px auto 0}.portrait img{width:100%;border-radius:8px}.portrait p{color:#656059}.portrait .eyebrow{font-size:10px}.portrait h3{font-size:37px}.portrait .text-link{display:inline-block;margin-top:10px}details{text-align:left;border-bottom:1px solid var(--line);padding:22px 0}details:first-of-type{margin-top:45px}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-weight:600}summary::after{content:'+';color:var(--gold)}details[open] summary::after{content:'−'}details p{font-size:17px;color:var(--muted)}.contact{background:#2a251e}form{max-width:640px;text-align:left;margin:45px auto 0}label{display:block;font-size:14px;margin-bottom:20px}select,textarea{display:block;width:100%;border:1px solid #ffffff30;background:#ffffff08;color:var(--paper);padding:14px;margin-top:9px;border-radius:5px}select option{color:#222}textarea{min-height:120px;resize:vertical}form .button{width:100%}.form-note{font-size:13px;color:var(--muted);text-align:center}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 35px;margin-top:45px}.contact-links span{width:100%;font-size:14px;color:var(--muted)}footer{padding:50px 6%;display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid var(--line)}footer p,footer div{font-size:12px;color:var(--muted)}footer div{display:flex;flex-direction:column;gap:8px}#form-status{font-size:14px;color:var(--gold)}@media(max-width:750px){header{padding:16px 6%}.brand{font-size:24px}.brand span{font-size:8px}.menu{display:block;background:none;color:var(--paper);border:0;font-size:14px}.menu span{margin-left:10px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--ink);padding:25px;flex-direction:column;align-items:stretch}nav.open{display:flex}section{padding:90px 7%}.hero{min-height:850px;min-height:100svh;padding:150px 7%}.hero .eyebrow{font-size:10px;letter-spacing:.12em}.intro{font-size:19px}.actions{flex-direction:column;align-items:stretch}.facts{grid-template-columns:1fr;gap:25px}.services,.project-grid,.comparison,.portrait{grid-template-columns:1fr}.services{gap:10px}.services p{min-height:0}.project-grid img{height:260px}.comparison{gap:25px}.portrait{gap:30px}.portrait img{max-width:280px;margin:auto}.portrait h3{font-size:32px}.portrait .eyebrow{line-height:1.8}footer{flex-direction:column;text-align:center}.comparison>img{height:300px}.button{min-height:54px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.beam-tip{display:none}.button{transition:none}}

@media(max-width:750px){h1{font-size:clamp(44px,13vw,60px)}}

/* Compact closing section: keep heading, inquiry and contacts visible together. */
.contact{padding:36px 6% 30px}
.contact .eyebrow{margin-bottom:12px}
.contact h2{font-size:clamp(30px,3vw,42px)}
.contact .intro{font-size:18px;line-height:1.4;margin-top:14px}
.contact form{margin-top:22px}
.contact label{margin-bottom:12px}
.contact select,.contact textarea{padding:10px;margin-top:5px}
.contact textarea{min-height:76px;height:76px}
.contact form .button{padding:12px 20px}
.contact .form-note{margin:8px 0 0}
#form-status:empty{display:none}
.contact-links{margin-top:20px;gap:8px 28px}
footer{padding:22px 6%}
@media(min-width:900px){
.contact .wrap{max-width:1120px;display:grid;grid-template-columns:1fr 1fr;column-gap:64px;align-items:start;text-align:left}
.contact .eyebrow,.contact h2,.contact .intro,.contact-links{grid-column:1}
.contact .intro{margin-left:0}
.contact form{grid-column:2;grid-row:1 / span 5;width:100%;margin:0}
.contact-links{justify-content:flex-start}
.contact{padding-top:44px;padding-bottom:44px}
}
@media(max-width:750px){.contact{padding:40px 7%}footer{gap:12px;padding:24px 7%}}

/* Closing screen includes the measured fixed navigation and footer. */
.contact{min-height:calc(100svh - var(--closing-header,89px) - var(--closing-footer,94px));display:flex;align-items:center}
.contact>.wrap{width:100%}

/* Reference-led closing card: full-bleed photograph and left contact copy. */
.contact{background:linear-gradient(90deg,rgba(32,29,25,.92) 0%,rgba(32,29,25,.76) 45%,rgba(32,29,25,.3) 100%),url('assets/contact-putz.jpg') center/cover no-repeat; padding:64px 7%}
.contact .wrap{display:flex;flex-direction:column;align-items:flex-start;text-align:left;max-width:1120px;gap:0}
.contact h2{font-size:clamp(38px,4.2vw,64px);max-width:720px;font-weight:700;letter-spacing:-.02em}
.contact .intro{max-width:570px;margin:22px 0 0;color:#e1ddd5;font-size:20px}
.contact-links{order:3;justify-content:flex-start;max-width:600px;margin-top:26px}
.contact-inquiry{order:4;margin-top:28px;max-width:600px;width:100%;border:0}
.contact-inquiry>summary{display:inline-flex;list-style:none;cursor:pointer;padding:14px 24px;font-size:17px}
.contact-inquiry>summary::-webkit-details-marker{display:none}
.contact-inquiry form{margin-top:20px;background:rgba(32,29,25,.88);padding:22px;border:1px solid #ffffff24;border-radius:8px}
@media(max-width:750px){.contact{padding:50px 7%;background-position:60% center}.contact h2{font-size:38px}.contact .intro{font-size:18px}}

/* Schema F: close-up parallax following the accepted Physio treatment section. */
.craft-parallax{min-height:65svh;display:flex;align-items:center;background:linear-gradient(90deg,#201d19e6,#201d1977 55%,#201d191f),url('assets/contact-putz.jpg') center 65%/cover fixed;padding:100px 7%}
.craft-parallax .wrap{width:100%;text-align:left}.craft-parallax h2{max-width:700px}.craft-parallax .intro{margin:24px 0 30px;max-width:550px;color:#eee7dc}.craft-parallax small{display:block;margin-top:30px;color:#ddd4c8;font-size:12px}
@media(min-width:1800px){body{font-size:20px}.wrap{max-width:1480px}.hero-content{max-width:1380px}h1{font-size:clamp(128px,7.4vw,160px)}h2{font-size:clamp(64px,3.8vw,80px)}.intro{font-size:26px;max-width:900px}nav{font-size:18px}.services p{font-size:20px}.contact .wrap{max-width:1480px}.contact h2{font-size:76px}.contact .intro{font-size:24px}.craft-parallax .intro{font-size:24px}}
@media(max-width:750px){.craft-parallax{background-attachment:scroll;background-position:58% center;min-height:540px;padding:80px 7%}.craft-parallax h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){.craft-parallax{background-attachment:scroll}}

/* Shared detail pages extend the existing Wugk visual system. */
.service-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:48px 0 0;text-align:left}.service-directory a{display:flex;justify-content:space-between;gap:10px;padding:18px 20px;border:1px solid currentColor;border-radius:8px;font-size:17px;text-decoration:none}.service-directory a:hover{color:var(--gold,#e7a64d)}.detail-heading{padding:170px 7% 80px;text-align:center;background:radial-gradient(ellipse at top,#4b3a24 0,transparent 70%)}.detail-heading h1{font-size:clamp(44px,5.5vw,100px);max-width:1200px;margin:24px auto}.breadcrumb{display:inline-block;margin-bottom:35px;color:inherit;font-size:16px}.detail-copy{max-width:850px;margin:0 auto 60px;text-align:center}.detail-copy h2{font-size:clamp(32px,4vw,62px)}.detail-copy p{font-size:21px;line-height:1.7}.work-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.work-gallery figure{margin:0}.gallery-open{position:relative;display:block;width:100%;padding:0;border:0;background:#d9d0c3;cursor:zoom-in;overflow:hidden;border-radius:10px}.gallery-open img{display:block;width:100%;height:320px;object-fit:cover;transition:transform .4s}.gallery-open:hover img{transform:scale(1.035)}.gallery-open span{position:absolute;bottom:14px;right:14px;background:#201d19d9;color:white;border-radius:50%;width:36px;height:36px;display:grid;place-items:center}.work-gallery figcaption{font-size:16px;line-height:1.4;margin:14px 0 20px}.detail-next{text-align:center}.footer-pages{display:flex;flex-wrap:wrap;gap:12px 24px;flex-basis:100%;justify-content:center}.lightbox{max-width:94vw;max-height:94svh;padding:20px;background:#201d19;color:#faf7ef;border:1px solid #76664d;border-radius:12px}.lightbox::backdrop{background:#000d}.lightbox img{display:block;max-width:85vw;max-height:73svh;object-fit:contain;margin:auto}.lightbox p{text-align:center;font-size:16px}.lightbox-close{display:block;margin:0 0 15px auto;background:transparent;color:white;border:1px solid #fff6;padding:10px 16px;border-radius:5px;cursor:pointer}
@media(min-width:1800px){.detail-heading{padding-top:210px}.detail-copy{max-width:1000px}.detail-copy p{font-size:24px}.gallery-open img{height:400px}}
@media(max-width:750px){.service-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.service-directory a{padding:14px 10px;font-size:14px}.detail-heading{padding-top:130px}.work-gallery{grid-template-columns:1fr}.gallery-open img{height:330px}.detail-copy p{font-size:18px}.footer-pages{justify-content:flex-start}.detail-heading h1{font-size:42px;overflow-wrap:normal}}

/* Shared accepted layout, adapted customer content. */
.hero h1{font-size:clamp(46px,6.5vw,112px);max-width:1200px;margin-inline:auto}.brand{font-size:clamp(19px,2vw,30px)}.source-copy{max-width:1040px;margin:auto;text-align:left;line-height:1.8}.source-copy h3{margin:2em 0 .7em;font-size:clamp(24px,3vw,36px)}.source-copy img{max-width:100%;height:auto;border-radius:12px;margin:18px auto;display:block}.source-copy>img{max-height:650px;object-fit:contain}.source-copy table{width:100%;display:block;overflow-x:auto;border-collapse:collapse}.source-copy td{padding:12px;border-bottom:1px solid #d6d0c4}.source-copy ul{padding-left:24px}.source-copy a{color:#98601b}.source-copy .reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.source-copy .reference-card{padding:22px;border:1px solid #d7d0c3;border-radius:16px}.source-copy .reference-card img{width:100%;height:250px;object-fit:cover}.source-copy details{color:inherit}.source-copy p{margin:1em 0}.archive-note{font-size:16px;opacity:.7}.section-directory{margin-top:30px}.section-directory summary{font-size:19px}.all-pages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px 0}.all-pages a{padding:12px;color:inherit;text-decoration:none;border-bottom:1px solid #b6a88a}.footer-pages{display:none}.identity .facts strong{font-size:24px}.project-grid img{object-fit:cover}.contact .wrap{max-width:1250px}.source-copy .photo-link{display:block}.detail-heading h1{overflow-wrap:anywhere}.hero-content .intro{max-width:850px}@media(max-width:750px){.all-pages,.source-copy .reference-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(38px,10vw,58px)}.source-copy .reference-card{padding:14px}.brand{font-size:20px}.brand span{font-size:8px}.hero{min-height:100svh}}@media(min-width:1800px){.hero h1{font-size:clamp(90px,6.3vw,140px)}}
