@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#181b18;--lime:#d6f86b;--paper:#fff;--muted:#60655e;--line:#dce0d8;--wash:#f2f4ef;--heading:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.6}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}p{margin:0 0 1rem}h1,h2,h3{font-family:var(--heading);font-weight:650;line-height:1.08;letter-spacing:-.055em;margin:0}h2{font-size:clamp(2.6rem,4.25vw,4.2rem)}h3{font-size:1.65rem;letter-spacing:-.035em}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #699500;outline-offset:5px}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;background:var(--lime);padding:1rem}.skip-link:focus{top:1rem}.header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.6rem 4%;border-bottom:1px solid var(--line);background:white}.wordmark{font:800 2.65rem/.75 var(--heading);letter-spacing:-.065em;display:inline-flex;align-items:center;gap:.7rem}.wordmark span{font:600 .73rem/1 var(--body);letter-spacing:.15em;border-left:1px solid currentColor;padding:.85rem 0 .85rem .75rem}.header nav{display:flex;gap:2rem;font-size:.94rem;font-weight:500}.header nav a{position:relative}.header nav a::after{content:'';position:absolute;bottom:-.4rem;left:0;width:0;height:2px;background:var(--ink);transition:width .2s}.header nav a:hover::after{width:100%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--ink);color:white;font-weight:550;padding:1.1rem 1.4rem;border:1px solid var(--ink);border-radius:3px;line-height:1.4;transition:background .2s,color .2s,transform .2s}.button:hover{background:#333b2d;transform:translateY(-2px)}.button span{font-size:1.35rem;line-height:1}.button-small{padding:.8rem 1.1rem;font-size:.9rem}.button-light{background:var(--lime);color:var(--ink);border-color:var(--lime)}.button-light:hover{background:#e4ffa0}.menu-toggle{display:none}.eyebrow{font-size:.76rem;font-weight:600;letter-spacing:.14em;line-height:1.5;margin:0 0 1.6rem}.hero{display:grid;grid-template-columns:1.01fr 1fr;min-height:660px;padding:1.6rem 1.6rem 1.6rem 4%;gap:2.2rem;max-width:1800px;margin:auto}.hero-copy{padding:3.2rem 0 1.3rem;display:flex;flex-direction:column;align-items:flex-start}.hero h1{font-size:clamp(3.6rem,6.1vw,6.7rem);font-weight:650;line-height:1.025;letter-spacing:-.065em}.hero h1 span{position:relative;z-index:0;white-space:nowrap}.hero h1 span::after{content:'';position:absolute;left:0;bottom:.025em;right:-.04em;height:.28em;background:var(--lime);z-index:-1}.hero-description{max-width:28rem;color:var(--muted);margin:1.8rem 0;font-size:1.075rem;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:1.5rem}.text-link{padding:0;border:0;background:none;font-weight:550;font-size:.92rem;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.text-link:hover{text-decoration-thickness:2px}.hero-footnote{display:flex;gap:1rem;align-items:center;margin-top:auto;padding-top:3rem;color:var(--muted);font-size:.8rem;line-height:1.5}.hour-mark{font:600 2.5rem/1 var(--heading);letter-spacing:-.065em;color:var(--ink);border-right:1px solid var(--line);padding-right:1rem}.hour-mark span{font-size:1.7rem;margin-left:.1em}.hero-photo{position:relative;margin:0;min-height:610px;border-radius:4px;overflow:hidden;background:#343731}.hero-photo>img{width:100%;height:100%;position:absolute;object-position:47% center}.hero-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 25%,transparent 65%,rgba(0,0,0,.5));pointer-events:none}.photo-label{position:absolute;top:1.5rem;left:1.5rem;right:1.5rem;display:flex;justify-content:space-between;gap:1rem;color:white;font-size:.7rem;font-weight:550;letter-spacing:.1em;z-index:1}.photo-label span:first-child{background:rgba(15,20,13,.68);padding:.4rem .65rem;border:1px solid #fff5;border-radius:2px}.photo-label span:last-child{padding:.4rem 0}.hero-photo figcaption{position:absolute;bottom:1.7rem;left:1.8rem;right:1.8rem;display:flex;align-items:center;justify-content:space-between;color:white;z-index:1;font:500 1.7rem/1.2 var(--heading);letter-spacing:-.03em}.hero-photo figcaption a{display:grid;place-items:center;width:3rem;height:3rem;background:var(--lime);color:var(--ink);border-radius:50%;font-size:1.7rem}.format-strip{background:var(--lime);display:flex;justify-content:space-around;gap:2rem;padding:1.15rem 4%;font-size:.76rem;letter-spacing:.16em;font-weight:600}.format-strip span+span::before{content:'+';display:inline-block;margin-right:3.5vw;opacity:.55}.section-wrap{max-width:1440px;margin:auto;padding:6rem 4%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:3rem}.section-heading .eyebrow{margin-bottom:1.2rem}.section-heading>p{color:var(--muted);margin:0;max-width:29rem}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.25rem}.room-image{position:relative;width:100%;height:auto;aspect-ratio:1.5;padding:0;border:0;overflow:hidden;border-radius:3px;background:#e9ece6}.room-image img{width:100%;height:100%;transition:transform .6s}.room-image:hover img{transform:scale(1.035)}.solo-image img{object-position:center 62%}.room-badge{position:absolute;top:1.2rem;left:1.2rem;background:white;padding:.45rem .65rem;font-size:.7rem;font-weight:600;letter-spacing:.08em}.image-open{position:absolute;bottom:1.2rem;right:1.2rem;border-radius:50%;background:white;width:2.8rem;height:2.8rem;display:grid;place-items:center;font-size:1.4rem}.room-title{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0 .8rem}.room-title>span{font-size:.78rem;background:var(--wash);padding:.25rem .65rem;border:1px solid var(--line);border-radius:30px;white-space:nowrap}.room>p{color:var(--muted);line-height:1.7;max-width:35rem}.room-bottom{border-top:1px solid var(--line);padding-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.room-bottom>span{font-size:.78rem;color:var(--muted)}.room-218{margin-top:4.2rem;background:var(--ink);color:white;display:grid;grid-template-columns:.9fr 1.1fr;border-radius:3px;overflow:hidden}.room-218-copy{padding:3rem}.room-218-copy .eyebrow{color:var(--lime);margin-bottom:1.2rem}.room-218 h3{font-size:2.7rem;line-height:1.13;letter-spacing:-.055em}.room-218 p:not(.eyebrow){color:#b9c0b5;margin:1.3rem 0 1.8rem;max-width:27rem}.room-218-image{position:relative;min-height:380px}.room-218-image>img{width:100%;height:100%;position:absolute}.room-218-image>span{position:absolute;bottom:1.5rem;right:1.5rem;display:flex;align-items:center;gap:.8rem;color:white;background:#181b18d9;padding:.65rem 1rem;font-size:.7rem;letter-spacing:.12em}.room-218-image strong{font:500 2.4rem/1 var(--heading);letter-spacing:-.045em}.image-note{font-size:.75rem;color:var(--muted);line-height:1.5;margin:1.3rem 0 0}.equipment-section{background:var(--wash)}.equipment-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;align-items:center}.equipment-copy>p:not(.eyebrow){color:var(--muted);max-width:29rem}.equipment-copy h2{margin-bottom:1.7rem}.equipment-list{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;margin:1.5rem 0 2rem;font-size:.85rem}.equipment-list span::before{content:'+';margin-right:.6rem}.equipment-inner figure{margin:0}.equipment-inner figure img{width:100%;aspect-ratio:1.13;border-radius:3px;object-position:center}.equipment-inner figcaption{display:flex;justify-content:space-between;gap:1rem;margin-top:.8rem;font-size:.9rem}.equipment-inner figcaption span{font-size:.65rem;color:var(--muted);letter-spacing:.08em;align-self:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:3.5rem;margin-top:3.5rem}.steps>div{border-top:1px solid #bdc3b7;padding-top:1.3rem}.steps>div>span{font-size:.85rem;color:var(--muted)}.steps h3{margin:1.8rem 0 1rem;font-size:1.5rem}.steps p{color:var(--muted);max-width:22rem;margin:0}.booking{margin:0 4%;max-width:none;border-radius:4px;background:var(--lime);display:grid;grid-template-columns:1fr .78fr;gap:6rem;padding:4.5rem}.booking h2{font-size:clamp(3rem,5.2vw,5.4rem);margin-bottom:1.8rem}.booking>div>p:not(.eyebrow){max-width:27rem}.booking-min{display:flex;flex-direction:column;gap:.3rem;border-top:1px solid #aac857;margin-top:2rem;padding-top:1.3rem}.booking-min strong{font-size:1.05rem}.booking-min span{font-size:.85rem}.booking-panel{background:white;padding:2.4rem;border-radius:3px}.booking-panel>p{color:var(--muted);margin:1.1rem 0 1.6rem}.booking-panel>.button{width:100%}.booking-panel .booking-note{font-size:.77rem;line-height:1.5;margin:1rem 0 1.7rem}.visit{border-top:1px solid var(--line);padding-top:1.4rem}.visit .eyebrow{font-size:.67rem}.visit p{margin:.7rem 0}.transit{display:block;color:var(--muted);font-size:.77rem;margin-top:1rem}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:5rem}.faq h2{font-size:2.2rem;letter-spacing:-.04em;max-width:22rem}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:1.2rem 2rem 1.2rem 0;list-style:none;position:relative;font-weight:550}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:0;font-size:1.3rem;font-weight:400;top:1rem}details[open] summary::after{content:'−'}details p{color:var(--muted);padding:0 2rem .3rem 0;font-size:.94rem}.footer{background:var(--ink);color:white;padding:3rem 4% 1.5rem}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem}.footer-top{padding:1rem 0 3rem}.footer-top p{margin:0;color:#b9c0b5}.footer-top>a:last-child{font-size:.9rem}.footer-bottom{border-top:1px solid #41473e;padding-top:1.5rem;color:#b9c0b5;font-size:.77rem}.footer .wordmark{color:var(--lime)}dialog{padding:0;border:0;border-radius:5px;width:min(680px,calc(100% - 2rem));max-height:90vh;color:var(--ink)}dialog::backdrop{background:#111b;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:1rem;top:1rem;border:0;background:white;border-radius:50%;width:2.8rem;height:2.8rem;font-size:1.8rem;z-index:1;line-height:1}.dialog-close:hover{background:var(--lime)}#dialog-image{width:100%;height:290px;object-position:center 60%}.dialog-content{padding:2rem}.dialog-content .eyebrow{margin-bottom:.7rem}.dialog-content h2{font-size:2.4rem;margin-bottom:1rem}.dialog-content p{color:var(--muted)}.dialog-content ul{padding-left:1.2rem;margin:1.5rem 0}.dialog-content li{margin:.35rem 0}.dialog-note{font-size:.85rem;border-top:1px solid var(--line);padding-top:1rem}.dialog-content .button{margin-top:.5rem}
@media(min-width:1600px){.header,.footer{padding-left:max(4%,calc((100vw - 1440px)/2));padding-right:max(4%,calc((100vw - 1440px)/2))}.booking{max-width:1325px;margin-left:auto;margin-right:auto}.hero-copy{padding-top:4rem}.hero{min-height:720px}}
@media(max-width:1100px){.header{gap:1rem}.header nav{gap:1.4rem}.hero{grid-template-columns:1fr 1fr;gap:1.5rem;min-height:620px}.hero h1{font-size:5.7vw}.hero-copy{padding-top:2rem}.hero-photo{min-height:550px}.hero-actions{align-items:flex-start;flex-direction:column;gap:1rem}.hero-footnote{padding-top:2rem}.hero-photo figcaption{font-size:1.3rem;left:1rem;right:1rem}.photo-label{left:1rem;right:1rem}.photo-label span:last-child{display:none}.equipment-inner{gap:2.5rem}.booking{padding:3rem;gap:3rem}.room-218-copy{padding:2rem}.room-218 h3{font-size:2.3rem}.faq{gap:3rem}.room-title h3{font-size:1.5rem}.room-bottom{flex-wrap:wrap}.equipment-inner figcaption{flex-direction:column;gap:0}.equipment-inner figcaption span{align-self:flex-start}}
@media(max-width:760px){html{scroll-padding-top:1rem}.header{padding:1.4rem 5%;flex-wrap:wrap;gap:1rem}.wordmark{font-size:2.2rem}.wordmark span{font-size:.62rem}.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:1px solid var(--line);width:42px;height:42px;border-radius:3px;padding:10px}.menu-toggle span{height:1px;width:100%;background:var(--ink)}.header nav{display:none;order:3;width:100%;padding-top:1rem;border-top:1px solid var(--line)}.header nav.open{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.hero{display:flex;flex-direction:column;padding:0 5% 1.3rem;gap:2rem;min-height:0}.hero-copy{padding:2.8rem 0 0}.eyebrow{font-size:.7rem;margin-bottom:1.4rem}.hero h1{font-size:clamp(3.15rem,10.8vw,5.2rem)}.hero-description{margin:1.5rem 0;max-width:29rem;font-size:1rem}.hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:1.2rem}.hero-actions .button{padding:.95rem 1.2rem}.hero-actions .text-link{font-size:.85rem}.hero-footnote{padding-top:2rem}.hour-mark{font-size:2rem}.hero-photo{min-height:390px}.hero-photo>img{object-position:center}.hero-photo figcaption{font-size:1.5rem}.photo-label{top:1rem}.photo-label span:last-child{display:block}.format-strip{padding:1rem 5%;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;font-size:.65rem;letter-spacing:.11em}.format-strip span+span::before{display:none}.format-strip span::before{content:'+';margin-right:.7rem;opacity:.6}.section-wrap{padding:3.8rem 5%}.section-heading{display:block;margin-bottom:2rem}.section-heading>p{margin-top:1.4rem}.section-heading h2{font-size:2.8rem}.desktop-only{display:none}.room-grid{grid-template-columns:1fr;gap:2.7rem}.room-image{aspect-ratio:1.35}.room-title{margin-top:1rem}.room-title h3{font-size:1.6rem}.room>p{font-size:.95rem}.room-bottom{flex-wrap:nowrap}.room-bottom>span{font-size:.7rem}.room-bottom .text-link{font-size:.85rem}.room-218{grid-template-columns:1fr;margin-top:3rem}.room-218-copy{padding:2rem}.room-218 h3{font-size:2.5rem}.room-218-image{min-height:300px}.image-note{font-size:.72rem}.equipment-inner{grid-template-columns:1fr;gap:2rem}.equipment-copy h2{font-size:3rem}.equipment-inner figure img{aspect-ratio:1.25}.equipment-inner figcaption{flex-direction:row}.equipment-inner figcaption span{max-width:9rem;font-size:.58rem;text-align:right}.steps{grid-template-columns:1fr;gap:1.7rem;margin-top:2rem}.steps>div{display:grid;grid-template-columns:2.8rem 1fr;gap:.5rem 0}.steps h3{margin:0;font-size:1.4rem}.steps p{grid-column:2;max-width:100%}.booking{margin:0 5%;padding:2.2rem 1.5rem;grid-template-columns:1fr;gap:2rem}.booking h2{font-size:3.1rem}.booking-panel{padding:1.7rem}.booking-panel h3{font-size:1.45rem}.booking-panel .button{padding:1rem;gap:.5rem}.faq{grid-template-columns:1fr;gap:2rem}.faq h2{font-size:2.4rem;max-width:18rem}.footer{padding:2.5rem 5% 1.5rem}.footer-top{align-items:flex-start;flex-wrap:wrap;padding:0 0 2rem;gap:1.7rem}.footer-top p{width:100%;order:3}.footer-top>a:last-child{font-size:.78rem}.footer-bottom{flex-direction:column;align-items:flex-start;gap:.6rem}.dialog-content{padding:1.5rem}#dialog-image{height:230px}.dialog-content h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Hero room slideshow shares the original image dimensions. */
.hero-slides,.hero-slide{position:absolute;inset:0;margin:0}
.hero-slide{opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;pointer-events:none}
.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.hero-slide>img{width:100%;height:100%;object-fit:cover;object-position:47% center}
.hero-slide:nth-child(2)>img{object-position:center 57%}
.hero-slide:nth-child(3)>img{object-position:58% center}
.hero-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0005,transparent 28%,transparent 48%,#000c);pointer-events:none}
.hero-slideshow::after{display:none}
.hero-slideshow .photo-label{z-index:2;pointer-events:none}
.hero-slideshow figcaption{bottom:6rem;gap:1rem;font-size:clamp(1.5rem,2.2vw,2.2rem)}
.hero-slideshow figcaption small{display:block;font:550 .75rem/1.5 var(--body);letter-spacing:.06em;margin-bottom:.65rem}
.hero-slideshow figcaption>a{flex-shrink:0}
.slideshow-controls{position:absolute;bottom:1.4rem;left:1.8rem;right:1.8rem;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:.8rem;border-top:1px solid #ffffff5c;padding-top:.7rem;color:white}
.slideshow-controls[hidden]{display:none}
.slideshow-controls button{color:inherit;border:0;background:transparent;cursor:pointer;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0}
.slideshow-controls button:focus-visible,.hero-slide a:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.slideshow-toggle{gap:.5rem;font:500 .875rem/1 var(--body)}
.slideshow-toggle-icon{font-size:1.1rem;width:1rem}
.slide-selectors{display:flex;align-items:center}
.slide-selectors button{min-width:32px}
.slide-selectors button::after{content:'';width:6px;height:6px;border:1px solid white;border-radius:50%;transition:background .2s,width .2s}
.slide-selectors button[aria-current="true"]::after{background:var(--lime);border-color:var(--lime);width:20px;border-radius:10px}
.slideshow-arrows{display:flex;gap:.25rem}
.slideshow-arrows button{font-size:1.5rem;border-radius:50%}
.slideshow-controls button:hover{color:var(--lime)}
@media(max-width:1100px){.slideshow-controls{left:1rem;right:1rem}.hero-slideshow figcaption{bottom:6rem}.slideshow-arrows{gap:0}}
@media(max-width:380px){.slideshow-controls{gap:.25rem}.slideshow-toggle{font-size:.8rem}.slideshow-arrows button{min-width:38px}.hero-slideshow figcaption{font-size:1.6rem}.hero-slideshow figcaption small{font-size:.7rem}}

/* Self-run sessions and the freelance technician directory. */
.session-options{border-bottom:1px solid var(--line)}
.session-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.session-option{background:var(--wash);padding:2.5rem;border-radius:3px;display:flex;flex-direction:column;align-items:flex-start}
.session-option-supported{background:var(--ink);color:white}
.option-number{font-size:.8rem;font-weight:600;letter-spacing:.1em;margin-bottom:2rem}
.session-option-supported .option-number{color:var(--lime)}
.session-option h3{font-size:2rem;margin-bottom:1rem}
.session-option>p{max-width:33rem;color:var(--muted)}
.session-option-supported>p{color:#c7cdc2}
.session-option .text-link{margin-top:.6rem;font-size:1rem}
.session-option .support-note{font-size:.8rem;margin:1.3rem 0 0;line-height:1.5}
.technicians-intro{padding-top:4rem}
.technicians-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:end}
.technicians-heading h1{font-size:clamp(3.5rem,5.8vw,6rem)}
.technicians-heading>div>p{font-size:1.12rem;max-width:30rem;color:var(--muted)}
.technicians-heading .crew-terms{font-size:.875rem;margin:1rem 0 0}
.sample-notice{display:grid;grid-template-columns:.85fr 2fr;gap:1.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:2.8rem 0;padding:1.3rem 0;align-items:start;font-size:.875rem}
.sample-notice strong{font-weight:600}.sample-notice p{margin:0;color:var(--muted);max-width:50rem}
.technician-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.technician-card>a{display:block}.technician-photo{position:relative;overflow:hidden;background:var(--wash);border-radius:3px;aspect-ratio:4/5}
.technician-photo img{width:100%;height:100%;object-position:center 26%;transition:transform .4s}
.technician-card a:hover .technician-photo img{transform:scale(1.035)}
.sample-badge{display:inline-block;background:var(--lime);color:var(--ink);font-size:.75rem;font-weight:600;letter-spacing:.08em;line-height:1.4;padding:.5rem .65rem;border-radius:2px}
.technician-photo>.sample-badge{position:absolute;top:1rem;left:1rem}
.technician-photo .image-open{width:2.8rem;height:2.8rem}
.technician-name{margin:1.3rem 0 .8rem}.technician-name h2{font-size:1.85rem;letter-spacing:-.04em;margin-bottom:.4rem}.technician-name>span{font-size:1rem;font-weight:550}
.technician-card a>p{font-size:.95rem;color:var(--muted);margin-bottom:1.2rem;min-height:3rem}
.technician-tags{display:flex;flex-wrap:wrap;gap:.5rem}
.technician-tags>span{background:var(--wash);border:1px solid var(--line);border-radius:2px;padding:.35rem .6rem;font-size:.875rem;line-height:1.3}
.profile-link{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;padding-top:1.1rem;margin-top:1.4rem;font-weight:550;font-size:.95rem}.profile-link>span{font-size:1.25rem}
.crew-cta{max-width:none;margin:0 4% 5rem;background:var(--ink);color:white;border-radius:3px;display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;padding:3.8rem;align-items:center}
.crew-cta .eyebrow{color:var(--lime);margin-bottom:1.2rem}.crew-cta h2{font-size:clamp(2.6rem,3.8vw,4rem)}.crew-cta p:not(.eyebrow){color:#c7cdc2;max-width:35rem;margin:1.5rem 0 0}.crew-cta>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:1.4rem}.crew-secondary{color:#c7cdc2;font-size:.9rem;text-decoration:underline;text-underline-offset:5px}
.profile-top{padding-top:2.3rem;padding-bottom:4rem}.back-link{display:inline-block;font-size:.9rem;margin-bottom:2.5rem;text-decoration:underline;text-underline-offset:5px}
.profile-hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;align-items:center}
.profile-portrait{margin:0;position:relative;background:var(--wash);max-width:490px;border-radius:3px;overflow:hidden}
.profile-portrait img{width:100%;aspect-ratio:4/5;object-position:center 25%}.profile-portrait figcaption{position:absolute;bottom:0;left:0;right:0;background:#181b18cc;color:white;font-size:.75rem;letter-spacing:.08em;padding:1rem 1.3rem}
.profile-intro>.sample-badge{margin-bottom:1.6rem}.profile-intro .eyebrow{margin-bottom:.8rem;font-size:.8rem}.profile-intro h1{font-size:clamp(3.5rem,5.5vw,5.8rem)}
.profile-focus{font-family:var(--heading);font-size:1.6rem;letter-spacing:-.035em;line-height:1.25;margin:1rem 0 1.3rem}.profile-intro>p:not(.eyebrow):not(.profile-focus){color:var(--muted);max-width:35rem}
.profile-intro .technician-tags{margin:1.4rem 0 2rem}.profile-intro .profile-disclosure{font-size:.875rem;line-height:1.6;margin:1rem 0 0;max-width:32rem}
.profile-details{background:var(--wash);max-width:none;display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;padding-top:4rem;padding-bottom:4rem}.profile-about{max-width:32rem}.profile-about h2{font-size:3rem;margin-bottom:1.6rem}.profile-about>p:not(.eyebrow){color:var(--muted)}
.profile-qualifications>article{display:grid;grid-template-columns:2rem 1fr;gap:1rem;padding:1.4rem 0;border-top:1px solid #cbd2c5}.profile-qualifications>article:last-child{margin-top:1rem}.qualification-number{font-size:.8rem;color:var(--muted)}.profile-qualifications h2{font-size:1.6rem;letter-spacing:-.035em;margin-bottom:1.3rem}.profile-qualifications h3{font:550 1rem/1.5 var(--body);letter-spacing:0;margin-bottom:.5rem}.profile-qualifications p{font-size:.95rem;color:var(--muted);max-width:35rem;margin-bottom:.8rem}.content-pending{font-size:.8rem;color:var(--muted);border-bottom:1px solid #b8c0b1;padding-bottom:.15rem}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.portfolio-image{position:relative;aspect-ratio:1.45;background:var(--wash);overflow:hidden;border-radius:3px}.portfolio-image img{width:100%;height:100%;object-position:center 60%}.portfolio-image>span{position:absolute;left:1rem;bottom:1rem;background:white;padding:.3rem .6rem;font-size:.75rem;font-weight:550;letter-spacing:.05em}.portfolio-card>.eyebrow{font-size:.75rem;color:var(--muted);margin:1.3rem 0 .6rem}.portfolio-card h3{font-size:1.5rem;margin-bottom:1rem}.portfolio-card>p:last-child{color:var(--muted);font-size:.95rem}
@media(min-width:1600px){.profile-details{padding-left:max(4%,calc((100vw - 1325px)/2));padding-right:max(4%,calc((100vw - 1325px)/2))}.crew-cta{max-width:1325px;margin-left:auto;margin-right:auto}}
@media(max-width:1100px){.header nav{gap:1.1rem;font-size:.875rem}.technicians-heading,.profile-hero{gap:3rem}.technician-grid,.portfolio-grid{gap:1.3rem}.technician-name h2{font-size:1.6rem}.crew-cta{gap:3rem;padding:3rem}.profile-details{gap:3rem}.technician-tags>span{font-size:.8rem}.profile-intro h1{font-size:4rem}}
@media(max-width:960px){.header{flex-wrap:wrap}.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:1px solid var(--line);width:42px;height:42px;border-radius:3px;padding:10px}.menu-toggle span{height:1px;width:100%;background:var(--ink)}.header nav{display:none;order:3;width:100%;padding-top:1rem;border-top:1px solid var(--line)}.header nav.open{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}.technicians-heading{gap:2rem}.technicians-heading h1{font-size:3.7rem}.sample-notice{grid-template-columns:1fr;gap:.5rem}.profile-hero{gap:2rem}.profile-focus{font-size:1.35rem}.profile-intro h1{font-size:3.4rem}.crew-cta{grid-template-columns:1fr;gap:2rem}.profile-details{gap:2rem}.session-option{padding:2rem}}
@media(max-width:760px){.session-option-grid{grid-template-columns:1fr}.session-option{padding:2rem 1.6rem}.session-option h3{font-size:1.8rem}.option-number{margin-bottom:1.5rem}.technicians-intro{padding-top:3rem}.technicians-heading{grid-template-columns:1fr;gap:1.4rem}.technicians-heading h1{font-size:clamp(3.2rem,10vw,4.5rem)}.technicians-heading>div>p{font-size:1rem}.sample-notice{margin:2rem 0;padding:1.2rem 0}.technician-grid{grid-template-columns:1fr 1fr;gap:2rem 1.2rem}.technician-name h2{font-size:1.55rem}.technician-card a>p{min-height:0}.technician-photo>.sample-badge{font-size:.65rem;left:.7rem;top:.7rem}.crew-cta{margin:0 5% 3rem;padding:2.2rem 1.5rem}.crew-cta .button{gap:1.4rem}.profile-hero{grid-template-columns:1fr;gap:2rem}.profile-portrait{max-width:100%;width:100%}.profile-portrait img{aspect-ratio:1.15;object-position:center 22%}.profile-intro h1{font-size:3.8rem}.profile-top{padding-top:1.8rem;padding-bottom:3rem}.back-link{margin-bottom:1.5rem}.profile-details{grid-template-columns:1fr;gap:2rem;padding:3rem 5%}.profile-about h2{font-size:2.7rem}.portfolio-grid{grid-template-columns:1fr;gap:2rem}.portfolio-image{aspect-ratio:1.6}.portfolio-section .section-heading h2{font-size:2.7rem}}
@media(max-width:480px){.technician-grid{grid-template-columns:1fr;gap:2.5rem}.technician-photo{aspect-ratio:1.1}.technician-photo img{object-position:center 23%}.technician-photo>.sample-badge{font-size:.75rem;top:1rem;left:1rem}.technician-name h2{font-size:1.9rem}.profile-intro h1{font-size:3.2rem}.profile-intro .button{width:100%;font-size:.95rem;gap:1rem}}
