:root{--navy:#102d40;--blue:#237fae;--blue-dark:#145f87;--ink:#142e3e;--muted:#526774;--line:#d9e3e9;--pale:#f0f5f8;--white:#fff;--accent:#f5ce55;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:1.5rem}*{box-sizing:border-box}body{margin:0;font-size:1rem;line-height:1.65}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-underline-offset:.22em}button,input,textarea,select{font:inherit}img{display:block;max-width:100%}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.05}h1{font-size:clamp(3.6rem,6.1vw,6.2rem)}h2{font-size:clamp(2.5rem,4vw,4.2rem)}h3{font-size:1.45rem;letter-spacing:-.025em;line-height:1.25}.wrap{width:min(1240px,calc(100% - 5rem));margin:auto}.topline{background:var(--navy);color:#dce9f1;font-size:.8rem;letter-spacing:.045em}.topline>.wrap{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0}.header{height:116px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:block;position:relative;width:230px;height:66px;overflow:hidden;flex-shrink:0}.brand img{position:absolute;width:230px;height:115px;max-width:none;top:-24px}.header nav{display:flex;gap:2.4rem;font-size:.93rem}.header nav a{text-decoration:none}.header nav a:hover{color:var(--blue-dark)}.button{border:0;border-radius:2px;padding:1rem 1.4rem;background:var(--navy);color:white;font-weight:600;font-size:1rem;line-height:1.35;text-decoration:none;display:inline-flex;align-items:center;justify-content:space-between;gap:1.6rem;cursor:pointer;transition:background .18s}.button:hover{background:var(--blue-dark)}.button.light{background:white;color:var(--navy)}.button.light:hover{background:#e5eff5}.button.small{font-size:.9rem;padding:.85rem 1.1rem}.button span{font-size:1.3em}.hero{display:grid;grid-template-columns:1.15fr .85fr;background:var(--navy);color:#fff;overflow:hidden}.hero-copy{padding:4.5rem 3.2rem 3rem}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.17em;line-height:1.6;margin-bottom:1.5rem}.eyebrow.blue{color:var(--blue-dark)}.hero .eyebrow{color:#9ed2ec}.hero-intro{max-width:29rem;color:#d9e6ed;margin:1.8rem 0 2rem;font-size:1.12rem;line-height:1.75}.actions{display:flex;align-items:flex-start;flex-direction:column;gap:1rem}.text-link{font-size:.9rem;color:#dce9f1}.hero-notes{border-top:1px solid #49606f;margin-top:2.5rem;padding-top:1.1rem;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.8rem;color:#d2e5ee}.hero-photo{position:relative;min-height:630px;background:#e8d7ae}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 28%;position:absolute}.hero-photo figcaption{position:absolute;bottom:1.7rem;left:1.7rem;right:1.7rem;background:#fff;color:var(--navy);padding:.95rem 1.1rem;display:flex;justify-content:space-between;gap:.5rem;font-size:.8rem;align-items:center}.hero-photo figcaption span:first-child{font-weight:700;font-size:1rem}.intro-strip{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:2rem;padding:2.5rem 0;border-bottom:1px solid var(--line);font-size:.9rem}.intro-strip>p{color:var(--muted)}.intro-strip strong{color:var(--ink)}.intro-strip>div{display:flex;align-items:flex-start;gap:.8rem}.step-number{font-size:.75rem;font-weight:700;color:var(--blue-dark);border-bottom:2px solid var(--blue);padding-top:.1rem}.section{padding-top:6rem;padding-bottom:6rem}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:4rem;margin-bottom:3rem}.section-heading p:not(.eyebrow){color:var(--muted);max-width:25rem;justify-self:end}.section-heading .eyebrow{margin-bottom:1rem}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem}.services-grid article{border-top:3px solid var(--navy);padding-top:1.3rem;display:flex;flex-direction:column}.service-no{color:var(--blue-dark);font-size:.72rem;font-weight:700;letter-spacing:.09em;margin-bottom:1.4rem}.services-grid h3{margin-bottom:1rem}.services-grid p{font-size:1rem;color:var(--muted);margin-bottom:1.5rem}.services-grid a{margin-top:auto;font-size:.875rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:.8rem;display:flex;justify-content:space-between;gap:.6rem}.about-band{background:var(--pale);padding:5rem 0}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:6rem;align-items:center}.about-grid h2{margin-bottom:1.8rem}.about-grid>div>p:not(.eyebrow){color:var(--muted);margin-bottom:1rem;max-width:34rem}.inline-link{display:inline-block;margin-top:1rem;font-weight:700;color:var(--blue-dark)}.testimonial{border-left:1px solid #c6d7e3;padding-left:3rem}.quote-mark{font-family:Georgia,serif;font-size:6rem;color:var(--blue);height:4.5rem;display:block;line-height:1}.testimonial blockquote{font-family:Georgia,serif;font-size:2.3rem;line-height:1.3;letter-spacing:-.03em;margin:1rem 0 1.7rem}.attribution{font-weight:700}.quote-context{font-size:.875rem;color:var(--muted);margin-top:.5rem;max-width:24rem}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.price-card{padding:2rem;background:#f4f7f9;border:1px solid #e1e9ed}.price-card.featured{border-top:4px solid var(--blue);padding-top:calc(2rem - 3px);background:#eaf3f8}.price-label{font-size:.72rem;letter-spacing:.1em;font-weight:700;margin-bottom:1.7rem}.price{font-size:3.9rem;line-height:1.1;letter-spacing:-.045em;font-weight:600;margin-bottom:1.6rem;min-height:5rem}.price>span{font-size:1.5rem;margin-right:.35rem;letter-spacing:-.02em}.price>small{font-size:.85rem;font-weight:400;letter-spacing:0;display:block;margin-bottom:.3rem}.price.words{font-family:Georgia,serif;font-weight:400;font-size:2.65rem;line-height:1.1}.price-card h3{font-size:1.15rem;margin-bottom:1rem}.price-card>p:not(.price,.price-label){font-size:.93rem;color:var(--muted)}.price-foot{border-top:1px solid #ccdce5;padding-top:1rem;margin-top:1.4rem}.price-note{font-size:.85rem;color:var(--muted);margin-top:1.5rem;max-width:62rem}.booking-section{background:var(--navy);color:#fff;padding:5rem 0}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem}.booking-copy .eyebrow{color:#9ed2ec}.booking-copy>p:not(.eyebrow){color:#d7e5ed;margin-top:1.8rem;max-width:26rem}.booking-copy h2{font-size:clamp(2.7rem,4.5vw,4.8rem)}dl{margin:2rem 0 0}dl>div{border-top:1px solid #435b69;padding:1rem 0}dt{color:#a6c7da;font-size:.78rem;margin-bottom:.25rem}dd{margin:0;font-size:1rem}.booking-note{font-size:.875rem}.booking-form{padding:2.2rem;background:#fff;color:var(--ink);align-self:start}.booking-form h3{font-size:1.5rem}.booking-form>p:first-of-type{font-size:.9rem;color:var(--muted);margin-top:.7rem;margin-bottom:1.5rem}.booking-form label{display:block;font-size:.875rem;font-weight:700;margin:1rem 0 .4rem}.booking-form label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #b5c7d2;border-radius:2px;padding:.7rem .8rem;background:white;color:var(--ink);font-size:1rem}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#607583;font-size:.9rem}input[type=date]{min-width:0;min-height:48px}.booking-form button{width:100%;margin-top:1.5rem;background:var(--blue-dark)}.booking-form button:hover{background:var(--navy)}.booking-form .form-fine{font-size:.78rem;color:var(--muted);line-height:1.65;margin-top:1rem}.direct-chat{display:inline-block;font-size:.85rem;margin-top:1rem}.form-error{color:#a22424;font-size:.9rem;margin-top:1rem}.support{display:grid;grid-template-columns:1.25fr 1fr;gap:5rem;padding-top:4rem;padding-bottom:4rem;align-items:center}.support h2{font-size:2.5rem}.support .eyebrow{margin-bottom:.7rem}.support p:not(.eyebrow){color:var(--muted);font-size:.95rem;margin-top:1rem;max-width:31rem}.support-links a{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);font-weight:700;text-decoration:none;overflow-wrap:anywhere}footer{background:var(--pale);padding:2rem 0}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem;font-size:.78rem;color:var(--muted)}.footer-inner strong{font-size:.9rem;color:var(--navy)}.skip{position:fixed;left:1rem;top:-6rem;padding:1rem;background:white;color:var(--navy);z-index:100}.skip:focus{top:1rem}:focus-visible{outline:3px solid #dba820;outline-offset:4px}.privacy{max-width:780px;padding-top:3rem;padding-bottom:5rem}.privacy h1{font-size:3.5rem;margin-bottom:2rem}.privacy h2{font-family:Arial,sans-serif;font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin:2rem 0 1rem}.privacy p{margin:.8rem 0;color:var(--muted)}
@media(min-width:1500px){.hero-copy{padding-top:5rem}.hero-photo{min-height:660px}}@media(max-width:1050px){.wrap{width:calc(100% - 3rem)}.header nav{gap:1.3rem}.hero-copy{padding:3rem 2.3rem}.hero-photo{min-height:590px}.hero h1{font-size:4.7rem}.hero-photo figcaption{flex-direction:column;align-items:flex-start}.intro-strip{grid-template-columns:repeat(3,1fr);gap:1.5rem}.intro-strip>p{grid-column:1/-1}.services-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem}.about-grid,.booking-grid{gap:3rem}.section-heading{gap:2rem}.price-card{padding:1.5rem}.price-card.featured{padding-top:calc(1.5rem - 3px)}.price{font-size:3.2rem}.testimonial{padding-left:2rem}.testimonial blockquote{font-size:2rem}.support{gap:2rem}}
@media(max-width:720px){.wrap{width:calc(100% - 2rem)}.topline{font-size:.68rem;letter-spacing:.015em}.header{height:88px;gap:1rem}.brand{width:176px;height:56px}.brand img{width:176px;height:88px;top:-16px}.header nav{display:none}.header .button{font-size:.76rem;padding:.7rem .85rem;gap:.6rem}.hero{width:100%;grid-template-columns:1fr}.hero-copy{padding:2.8rem 1.5rem 2.2rem}.hero .eyebrow{font-size:.68rem;margin-bottom:1.2rem}.hero h1{font-size:4.4rem}.hero-intro{font-size:1.05rem;max-width:27rem}.hero-notes{margin-top:2rem;font-size:.75rem}.hero-photo{min-height:475px}.hero-photo>img{object-position:center 23%}.hero-photo figcaption{left:1.5rem;right:1.5rem;bottom:1.5rem;flex-direction:row;align-items:center}.intro-strip{padding:1.8rem 0;grid-template-columns:1fr;gap:1.2rem}.intro-strip>p{margin-bottom:.3rem}.intro-strip>div{gap:1.2rem}.intro-strip>div p br{display:none}.section{padding-top:3.5rem;padding-bottom:3.5rem}.section-heading{grid-template-columns:1fr;gap:1.4rem;margin-bottom:2rem}.section-heading>p:not(.eyebrow){justify-self:start;max-width:100%}.section-heading .eyebrow{font-size:.66rem}.services-grid{gap:2rem 1.25rem}.services-grid h3{font-size:1.25rem}.service-no{font-size:.65rem;margin-bottom:1rem}.services-grid p{font-size:.93rem}.services-grid a{font-size:.8rem}.about-band{padding:3rem 0}.about-grid,.booking-grid{grid-template-columns:1fr;gap:2.5rem}.testimonial{border-left:0;border-top:1px solid #c6d7e3;padding:2rem 0 0}.testimonial blockquote{font-size:2.2rem}.price-grid{grid-template-columns:1fr}.price-card,.price-card.featured{padding:1.8rem}.price{min-height:0;font-size:3.5rem}.price.words{font-size:2.6rem}.price-label{margin-bottom:1rem}.booking-section{padding:3.5rem 0}.booking-copy>p:not(.eyebrow){max-width:100%}.booking-form{padding:1.5rem}.support{grid-template-columns:1fr;gap:1rem;padding-top:3rem;padding-bottom:3rem}.support h2{font-size:2.3rem}.footer-inner{align-items:flex-start;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.footer-inner>p:first-child{grid-column:1/-1}.privacy h1{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button{transition:none}}@media(max-width:380px){.hero h1{font-size:3.8rem}.brand{width:148px}.brand img{width:148px;height:74px;top:-8px}.services-grid{grid-template-columns:1fr}.hero-photo{min-height:410px}.header .button span{display:none}}

/* Optional measurement stays in page flow: it never covers a booking control. */
.measurement-choice[hidden],.measurement-settings[hidden]{display:none}.measurement-choice{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.2rem 1.4rem;margin-bottom:1.5rem;background:var(--pale);border:1px solid var(--line)}.measurement-choice h2{font:700 1rem/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;margin-bottom:.3rem}.measurement-choice p{max-width:50rem;font-size:.9rem;color:var(--muted)}.measurement-choice a{font-size:.8rem}.measurement-actions{display:flex;gap:.6rem;flex-shrink:0}.measurement-actions button{min-height:44px;padding:.55rem 1rem;background:white;color:var(--navy);border:1px solid var(--blue-dark);border-radius:2px;cursor:pointer;font-weight:700}.measurement-actions button:hover{background:#e5eff5}.measurement-settings{font:inherit;padding:.5rem 0;min-height:44px;color:inherit;background:none;border:0;text-decoration:underline;text-underline-offset:.22em;cursor:pointer}.measurement-status{font-size:.8rem;color:var(--muted)}.measurement-status:not(:empty){padding-bottom:1rem}@media(max-width:720px){.measurement-choice{flex-direction:column;align-items:stretch;gap:.8rem;padding:1rem}.measurement-actions button{flex:1}.measurement-status{font-size:.75rem}}
