@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600&family=DM+Sans:wght@400;500;600&family=Lora:wght@400;500;600&display=swap');
:root{--ink:#244e53;--sea:#c7deda;--sand:#eee6d8;--paper:#faf8f2;--muted:#546c6c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,select,textarea{font:inherit}header{display:flex;align-items:center;justify-content:space-between;padding:26px 6%;border-bottom:1px solid #244e5322;gap:22px}.brand{font:30px/1.1 'Lora',Georgia,serif}.brand small{display:block;font:10px/2.5 'DM Sans',sans-serif;letter-spacing:3px;text-transform:uppercase}nav{display:flex;gap:26px;font-size:14px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:13px 25px;border:1px solid var(--ink);border-radius:3px;background:var(--ink);color:white;font-size:14px;cursor:pointer}.button.light{background:transparent;color:var(--ink)}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:680px;padding:65px 6% 70px;gap:7%;align-items:center}.eyebrow{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;margin:0 0 25px}h1,h2,h3{font-family:'Lora',Georgia,serif;font-weight:400;line-height:1.1;margin:0 0 25px}h1{font-size:clamp(48px,5.4vw,82px);letter-spacing:-2px}h2{font-size:clamp(38px,4vw,60px)}h3{font-size:32px}p{max-width:670px}.hero p{color:var(--muted);max-width:490px;margin-bottom:30px}.hero-photo{height:560px;width:100%;object-fit:cover;border-radius:230px 230px 8px 8px;filter:saturate(.62)}.photo-wrap{position:relative}.photo-caption{position:absolute;bottom:25px;left:-30px;background:var(--sand);padding:20px 27px;font:25px 'Lora',serif;max-width:240px;transform:rotate(-4deg)}.strip{background:var(--sea);padding:19px 6%;display:flex;justify-content:space-around;gap:20px;font-size:13px}.section{padding:95px 8%}.section.sand{background:var(--sand)}.section.sea{background:var(--sea)}.section.dark{background:var(--ink);color:var(--paper)}.intro{max-width:760px;margin:auto;text-align:center}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:45px}.card{border-top:1px solid #244e5350;padding:28px 0}.card .number{font-size:12px;letter-spacing:2px;margin-bottom:28px;color:var(--muted)}.card p{font-size:15px;color:var(--muted)}.card a{display:inline-block;font-size:14px;margin-top:12px;border-bottom:1px solid}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.section p{color:var(--muted)}.dark p{color:#d4e3e0}.bigquote{font:42px/1.3 'Lora',Georgia,serif;max-width:720px}.cta{text-align:center}.cta p{margin:20px auto 30px}footer{background:#e6ede7;padding:55px 6% 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}footer p,footer a{font-size:14px}footer .fine{font-size:12px;margin-top:40px;padding-top:20px;border-top:1px solid #244e5325}.page-top{padding:75px 8% 60px;background:var(--sand)}.page-top h1{max-width:940px}.page-top p{font-size:18px}.read{max-width:900px;margin:auto}.read h2{margin-top:50px;font-size:42px}ul{padding-left:22px}li{margin-bottom:12px}details{border-bottom:1px solid #244e5340;padding:22px 0}summary{cursor:pointer;font-size:20px}summary::marker{color:var(--ink)}.form{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:14px;display:block}input,select,textarea{width:100%;border:1px solid #7a9490;background:#fffefa;padding:12px;margin-top:7px;color:var(--ink);border-radius:3px}.full{grid-column:1/-1}.check{display:flex;gap:12px;align-items:start}.check input{width:auto;margin-top:7px}:focus-visible{outline:3px solid #b17d45;outline-offset:5px}.menu-toggle{display:none}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:9}@media(max-width:900px){header{flex-wrap:wrap}.menu-toggle{display:block;border:1px solid;background:none;padding:8px 15px;color:var(--ink)}nav{display:none;width:100%;flex-wrap:wrap}nav.open{display:flex}.hero{padding:45px 7%;gap:35px;min-height:auto}.hero-photo{height:430px}h1{font-size:55px}.grid{grid-template-columns:repeat(2,1fr)}.strip{flex-wrap:wrap}.section{padding:65px 7%}}@media(max-width:600px){.hero,.split,.footer-grid{grid-template-columns:1fr}.hero{gap:45px}h1{font-size:49px}.hero-photo{height:380px}.photo-caption{left:-12px}.grid{grid-template-columns:1fr;gap:10px}.strip{justify-content:center;font-size:12px}.split{gap:30px}.form{grid-template-columns:1fr}.form>*{grid-column:1}.brand{font-size:27px}.section{padding:60px 7%}.page-top{padding:50px 7%}.bigquote{font-size:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Clearer editorial typography and reserved personal photographs. */
h1,h2,h3{font-weight:500;line-height:1.2;letter-spacing:-.025em}
h1{font-size:clamp(44px,4.7vw,70px)}
h2{font-size:clamp(34px,3.4vw,50px)}
h3{font-size:28px}
.brand{font-weight:500;line-height:1.3}
.brand small{font-size:12px;letter-spacing:2px}
.bigquote{font-size:35px;line-height:1.5}
.photo-caption{font-size:22px;line-height:1.5}
.card p{font-size:16px}
.eyebrow,.card .number{font-size:14px;letter-spacing:1.7px}
.hero p,.section p,.card p{color:#425f60}
.dark p{color:#e1ebe8}
.photo-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:45px 30px;text-align:center;background:#e5e9df;border:1px dashed #839c94;color:#3e5e5a;min-height:330px;margin:0;width:100%}
.photo-slot strong{font-family:'Lora',Georgia,serif;font-weight:500;font-size:26px;line-height:1.4}
.photo-slot span{font-size:14px;max-width:260px;line-height:1.6}
.photo-slot.hero-photo{height:560px;filter:none;border-radius:230px 230px 8px 8px}
.photo-slot.portrait{min-height:480px;border-radius:160px 160px 8px 8px;margin-bottom:32px}
.photo-slot.consultation{min-height:300px;margin-top:35px;border-radius:5px}
@media(max-width:900px){.photo-slot.hero-photo{height:430px}.hero{grid-template-columns:1fr 1fr;gap:5%}}
@media(max-width:600px){.hero{grid-template-columns:1fr;gap:40px}h1{font-size:43px}h2{font-size:35px}.photo-slot.hero-photo{height:380px}.photo-slot.portrait{min-height:380px}.bigquote{font-size:29px}.brand{font-size:25px}.photo-caption{font-size:20px}.footer-grid{overflow-wrap:anywhere}}

/* Personal photographs, displayed in their original colors. */
.hero-photo.personal-hero{display:block;filter:none;object-position:50% 48%;height:560px}
.personal-portrait{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:150px 150px 8px 8px;margin-bottom:32px}
.consultation-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:35px;align-items:start}
.consultation-gallery img{display:block;width:100%;height:auto;border-radius:5px}
@media(max-width:900px){.hero-photo.personal-hero{height:430px}}
@media(max-width:600px){.hero-photo.personal-hero{height:440px}.personal-portrait{border-radius:100px 100px 8px 8px}.consultation-gallery{gap:12px}}

.office-section .consultation-gallery{max-width:900px;margin:40px auto 0;gap:30px}.office-section .consultation-gallery img{height:490px;object-fit:cover;object-position:center;border-radius:8px}@media(max-width:600px){.office-section .consultation-gallery{grid-template-columns:1fr;gap:20px}.office-section .consultation-gallery img{height:auto;max-height:none}}

/* Home refinements */
.photo-caption{max-width:195px;padding:12px 17px;font-size:18px;line-height:1.4;left:-16px;bottom:22px}
.strip{text-align:center;line-height:1.8}
.relationship-grid,.approach-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.approach-grid{column-gap:55px;row-gap:15px}
.approach-grid h3{font-size:25px;line-height:1.4}
@media(max-width:600px){.relationship-grid,.approach-grid{grid-template-columns:1fr}.photo-caption{font-size:17px;max-width:180px;padding:11px 15px}.approach-grid h3{font-size:23px}}

.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.areas-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:30px 0 55px}
.areas-grid li{background:var(--sand);padding:24px;border-radius:5px;margin:0}
.areas-grid h3{font-size:25px;margin-bottom:14px}.areas-grid p{margin:0;font-size:16px}
.care-list{padding-left:22px}.care-list li{padding:8px 0 14px 6px;line-height:1.8}
@media(max-width:600px){.process-grid,.areas-grid{grid-template-columns:1fr}}

/* A welcoming editorial layout for the therapeutic experience. */
.care-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0 0}
.care-card{background:var(--sand);border-radius:5px 28px 5px 5px;padding:27px 28px;border-top:3px solid #99bcb6}
.care-card:nth-child(2),.care-card:nth-child(3){background:#e7efea}
.care-card:last-child{grid-column:1/-1;display:flex;align-items:baseline;gap:28px;background:var(--sea)}
.care-index{display:block;font-family:'Lora',Georgia,serif;font-size:26px;line-height:1.3;color:#406863;margin-bottom:18px}
.care-card p{margin:0;line-height:1.85;font-size:16px}
.care-card strong{font-weight:600;color:var(--ink)}
@media(max-width:600px){.care-cards{grid-template-columns:1fr;gap:16px}.care-card{padding:24px}.care-card:last-child{display:block}.care-index{font-size:24px;margin-bottom:12px}}

/* Shared editorial design for the six individual services. */
.service-detail .page-top{padding:85px 8% 80px;background:#eee6d8;border-bottom:1px solid #244e5320}
.service-detail .page-top .eyebrow{display:inline-block;border-bottom:1px solid #6f928b;padding-bottom:12px;margin-bottom:30px}
.service-detail .page-top h1{max-width:1000px;font-size:clamp(42px,4.8vw,68px);line-height:1.18}
.service-detail .page-top p{max-width:750px;font-size:19px;line-height:1.8;margin-bottom:0}
.service-detail .service-recognition h2{max-width:650px;margin-bottom:40px}
.recognition-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;padding:0;margin:0}
.recognition-cards li{margin:0;padding:32px 28px;background:#e7efea;border-radius:5px 30px 5px 5px;border-top:0;font-size:17px;line-height:1.85}
.recognition-cards li:nth-child(2){background:#e7efea}
.service-context{background:#d6e5df}
.service-context-inner{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;align-items:center;max-width:1150px;margin:auto}
.service-context-inner h2{font-size:clamp(35px,3.6vw,50px);margin:0}
.service-context-inner p{font-size:18px;line-height:1.9;margin:0;padding-left:30px;border-left:1px solid #76978e}
.service-work-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;max-width:1150px;margin:auto}
.service-work-layout h2{font-size:clamp(35px,3.6vw,50px);margin:0}
.therapy-steps{list-style:none;padding:0;margin:0}
.therapy-steps li{position:relative;margin:0;padding:24px 0 24px 28px;border-bottom:1px solid #244e5330;font-size:17px;line-height:1.85}
.therapy-steps li:first-child{padding-top:0}
.therapy-steps li:before{content:'';position:absolute;left:0;top:36px;width:8px;height:8px;border-radius:50%;background:#6a9188}
.therapy-steps li:first-child:before{top:12px}
.service-note{max-width:1150px;margin:48px auto 0;background:var(--sand);padding:28px 35px;border-radius:5px;border-left:0}
.service-note p{max-width:900px;margin:0;line-height:1.85}
@media(max-width:900px){.recognition-cards{grid-template-columns:1fr;gap:16px}.recognition-cards li{padding:26px}.service-context-inner,.service-work-layout{gap:35px}}
@media(max-width:600px){.service-detail .page-top{padding:50px 7%}.service-detail .page-top h1{font-size:42px}.service-detail .page-top p{font-size:17px}.service-context-inner,.service-work-layout{grid-template-columns:1fr;gap:28px}.service-context-inner p{padding-left:20px;font-size:17px}.service-note{padding:24px;margin-top:32px}.recognition-cards li{font-size:16px}.therapy-steps li{font-size:16px}}

/* About: shared rhythm, full-width quote and personal details. */
.about-introduction{align-items:center;row-gap:50px}
.about-introduction .personal-portrait{margin:0}
.about-wide-quote{grid-column:1/-1;margin:0;padding:36px 4%;background:var(--sea);border-radius:5px;font:400 clamp(25px,2.7vw,38px)/1.5 'Lora',Georgia,serif;text-align:center;color:var(--ink)}
.about-pillars>h2{max-width:850px;text-align:center;margin:0 auto 45px;font-size:clamp(32px,3.4vw,48px)}
.about-pillars .grid{text-align:center;gap:25px;margin:0}
.about-pillars .card{border:0;background:#e7efea;padding:32px 25px;border-radius:6px}
.about-pillars .card p{margin:0}
.about-personal>h2{text-align:center;margin-bottom:40px}
.personal-life-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:6%;align-items:center}
.personal-life-layout>img{display:block;width:100%;height:auto;border-radius:8px}
.personal-details{list-style:none;margin:0;padding:0}
.personal-details li{padding:21px 0;margin:0;border-bottom:1px solid #244e5325;font:400 22px/1.6 'Lora',Georgia,serif}
.personal-details li:last-child{border-bottom:0;color:#315f61}
@media(max-width:900px){.about-pillars .grid{grid-template-columns:1fr}.personal-life-layout{grid-template-columns:1fr;gap:24px}.personal-details{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}}
@media(max-width:600px){.about-wide-quote{padding:28px 22px}.about-introduction{row-gap:30px}.personal-details{grid-template-columns:1fr}.personal-details li{font-size:20px}.about-pillars>h2{font-size:32px}}

/* Personal notes live within the portrait composition. */
.personal-photo-story{position:relative;isolation:isolate;max-width:1200px;margin:0 auto;background:#e0d8ce;border-radius:12px;overflow:hidden}
.personal-photo-story>img{display:block;width:100%;height:auto}
.photo-note{position:absolute;margin:0;font-family:'Caveat','Segoe Print',cursive;font-weight:500;font-size:clamp(22px,2.7vw,36px);line-height:1.18;text-align:center;color:#405d58!important;width:25%;z-index:1}
.note-travel{left:2%;top:10%;transform:rotate(-7deg)}
.note-food{left:2%;top:43%;font-size:clamp(20px,2.3vw,31px);transform:rotate(-5deg)}
.note-animals{right:1%;top:19%;transform:rotate(6deg)}
.note-sea{right:1%;top:61%;transform:rotate(5deg)}
@media(max-width:600px){.personal-photo-story{padding-bottom:240px}.personal-photo-story>img{width:100%;height:auto}.photo-note{width:43%;font-size:25px;line-height:1.15}.note-travel{top:auto;bottom:160px;left:3%}.note-animals{top:auto;bottom:160px;right:3%}.note-food{top:auto;bottom:25px;left:3%;font-size:21px}.note-sea{top:auto;bottom:58px;right:3%}}

/* Personal portrait and interests inspired by the supplied Canva layout. */
.personal-canva-layout{display:grid;grid-template-columns:1fr 1fr;max-width:1100px;margin:0 auto;background:var(--sand);border-radius:10px;overflow:hidden;align-items:stretch}
.personal-canva-portrait{min-width:0;background:#e0d8ce}
.personal-canva-portrait img{display:block;width:100%;height:100%;min-height:570px;object-fit:cover;object-position:50% center}
.personal-canva-notes{display:flex;flex-direction:column;justify-content:center;padding:44px 50px;gap:0;text-align:center}
.personal-interest{padding:28px 0}
.personal-interest+.personal-interest{border-top:1px solid #244e5326}
.personal-interest h3{font-family:'Lora',Georgia,serif;font-size:30px;line-height:1.3;font-weight:500;margin:0 0 12px;color:var(--ink)}
.personal-interest p{font-family:'DM Sans',sans-serif;font-size:19px;line-height:1.65;margin:0 auto;max-width:310px;color:#425f60}
@media(max-width:900px){.personal-canva-notes{padding:30px}.personal-canva-portrait img{min-height:540px}.personal-interest h3{font-size:27px}}
@media(max-width:600px){.personal-canva-layout{grid-template-columns:1fr}.personal-canva-portrait img{min-height:0;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 25%}.personal-canva-notes{padding:12px 28px 20px}.personal-interest{padding:25px 0}.personal-interest h3{font-size:27px}.personal-interest p{font-size:18px}}

.personal-canva-layout,.personal-canva-portrait,.personal-canva-notes{background:#faf8f2}.personal-interest h3{font-size:27px}.personal-interest p{font-size:18px;line-height:1.8}@media(max-width:600px){.personal-interest h3{font-size:25px}}

/* Smaller personal portrait, aligned with the site's regular text scale. */
.personal-canva-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);max-width:1000px;align-items:center}
.personal-canva-portrait{width:100%;max-width:360px;justify-self:center}
.personal-canva-portrait img{min-height:0;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center}
.personal-canva-notes{padding:20px 36px}
.personal-interest{padding:23px 0}
.personal-interest h3{font-size:28px;line-height:1.3}
.personal-interest p{font-size:16px;line-height:1.75;max-width:370px}
@media(max-width:600px){.personal-canva-layout{grid-template-columns:1fr}.personal-canva-portrait{max-width:280px}.personal-canva-notes{padding:12px 20px 20px}.personal-interest h3{font-size:28px}.personal-interest p{font-size:16px}}

/* A quiet editorial composition for the personal introduction. */
.personal-editorial{padding-top:90px;padding-bottom:95px}
.personal-editorial .personal-canva-layout{max-width:1080px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9%;overflow:visible;border-radius:0;align-items:center}
.personal-editorial .personal-canva-portrait{max-width:370px;position:relative;border-radius:190px 190px 8px 8px;box-shadow:-18px 18px 0 #e5eeea;overflow:hidden}
.personal-editorial .personal-canva-portrait img{display:block;width:100%;height:auto;aspect-ratio:3/4;min-height:0;object-fit:cover;object-position:50% 50%;border-radius:inherit}
.personal-editorial .personal-canva-notes{padding:0;text-align:left;display:block}
.personal-editorial .personal-canva-notes>h2{font-size:clamp(36px,3.5vw,48px);line-height:1.2;margin:0 0 34px;letter-spacing:-.025em}
.personal-editorial .personal-interest{padding:0;margin:0 0 25px;border:0}
.personal-editorial .personal-interest:last-child{margin-bottom:0}
.personal-editorial .personal-interest h3{font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.5;font-weight:600;letter-spacing:0;margin:0 0 7px;color:var(--ink)}
.personal-editorial .personal-interest p{font-size:16px;line-height:1.8;max-width:430px;margin:0;color:#546c6c}
@media(max-width:900px){.personal-editorial .personal-canva-layout{gap:7%}.personal-editorial .personal-canva-portrait{max-width:310px}}
@media(max-width:600px){.personal-editorial{padding:60px 8% 65px}.personal-editorial .personal-canva-layout{grid-template-columns:1fr;gap:48px}.personal-editorial .personal-canva-portrait{max-width:265px;justify-self:center;box-shadow:-12px 12px 0 #e5eeea}.personal-editorial .personal-canva-notes{padding:0}.personal-editorial .personal-canva-notes>h2{font-size:36px;margin-bottom:28px}.personal-editorial .personal-interest{margin-bottom:24px}}

.contact-subheading{margin-top:36px}
.contact-assessment{background:var(--sand);padding:28px;border-radius:6px;margin:32px 0}
.contact-assessment h3{margin-bottom:16px}.contact-assessment .button{text-align:center}
.contact-direct{padding-top:8px}.contact-direct h3{margin-bottom:12px}.contact-direct p{margin-bottom:12px}.contact-direct>a{display:block;overflow-wrap:anywhere;margin-bottom:10px}
.contact-map-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.contact-map-heading h2{margin-bottom:12px}.contact-map-heading p{margin:0}.contact-map iframe{display:block;border-radius:8px;width:100%;height:420px}
@media(max-width:600px){.contact-assessment{padding:24px}.contact-map-heading{align-items:flex-start;flex-direction:column}.contact-map iframe{height:330px}}

.contact-direct>a.contact-icon-link{display:flex;align-items:center;gap:12px;overflow-wrap:anywhere}.contact-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;height:36px;border-radius:50%;background:var(--sea)}.contact-icon svg{width:19px;height:19px}.contact-map iframe{height:430px}@media(max-width:600px){.contact-map iframe{height:350px}.contact-icon-link{font-size:14px}}

/* Keep contact details intact and confine sand to the map heading. */
.contact-direct>a.contact-icon-link{white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:clamp(12px,1.18vw,16px);gap:9px}
.contact-map{background:var(--paper)}
.contact-map-heading{align-items:center}
.contact-map-heading>div{background:var(--sand);padding:22px 26px;border-radius:5px;flex:0 1 auto}
.contact-map-heading h2{font-size:clamp(30px,3.4vw,48px)}
@media(max-width:900px){.contact-direct>a.contact-icon-link{font-size:13px}.contact-direct .contact-icon{flex-basis:30px;height:30px}}
@media(max-width:600px){.contact-direct>a.contact-icon-link{font-size:clamp(12px,3.35vw,16px);gap:8px}.contact-map-heading{align-items:flex-start}.contact-map-heading>div{padding:20px}.contact-map-heading h2{font-size:30px}}

/* Restore the full sand map section with a tighter footer transition. */
.contact-map{background:var(--sand);padding-bottom:28px}
.contact-map-heading>div{background:transparent;padding:0;border-radius:0}
@media(max-width:600px){.contact-map{padding-bottom:20px}.contact-map-heading>div{padding:0}}

.home-services-heading{max-width:760px;text-wrap:balance}
.contact-assessment .button{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:8px}
.booking-arrow{flex:none;white-space:nowrap}
@media(max-width:900px){
 header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px 6%}
 header .brand{grid-column:1;min-width:0}
 header .menu-toggle{grid-column:2;justify-self:end;align-self:start;margin:0;padding:8px 12px}
 header nav{grid-column:1/-1;justify-self:start;width:100%;display:none;text-align:left}
 header nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:12px 0 0;border-top:1px solid #244e5325}
 header nav>a{display:block;padding:10px 0;width:100%;text-align:left}
 header nav>a.button{width:auto;padding:10px 20px;margin-top:8px}
}
@media(max-width:600px){
 header{padding:20px 6%;gap:12px}
 header .brand{font-size:23px}
 header .brand small{font-size:10px;letter-spacing:1px;white-space:nowrap}
 header .menu-toggle{font-size:14px;padding:7px 10px}
 .home-services-heading{font-size:32px;line-height:1.25;max-width:100%;text-wrap:balance}
 .personal-editorial .personal-canva-notes{grid-row:1}
 .personal-editorial .personal-canva-portrait{grid-row:2}
 .contact-assessment .button{font-size:13px;padding:12px 10px;gap:6px;width:100%;white-space:nowrap}
}

/* Consistent mobile ordering and right-aligned navigation. */
.personal-editorial .personal-canva-portrait{grid-column:1;grid-row:1}
.personal-editorial .personal-canva-notes{grid-column:2;grid-row:1}
@media(max-width:900px){
 header .menu-toggle{grid-column:2;grid-row:1;justify-self:end;align-self:start}
 header nav.open{align-items:flex-end;text-align:right;justify-self:end}
 header nav.open>a{width:auto;text-align:right;padding:9px 0}
 header nav.open>a::before{content:'– ';}
 header nav.open>a.button{background:transparent;border:0;color:var(--ink);padding:9px 0;margin:0;border-radius:0}
}
@media(max-width:600px){
 .personal-editorial .personal-canva-layout{display:flex;flex-direction:column;align-items:stretch;gap:35px}
 .personal-editorial .personal-canva-notes{order:1;width:100%}
 .personal-editorial .personal-canva-portrait{order:2;width:100%;align-self:center}
 .contact-assessment{padding:22px 16px}
 .contact-assessment .button{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;white-space:nowrap;width:100%;gap:5px;padding:12px 5px;font-size:12px;letter-spacing:0}
 .contact-assessment .button>span{display:inline-block;white-space:nowrap;flex:none}
}

@media(max-width:600px){
 .care-cards .care-card,.care-cards .care-card:nth-child(2),.care-cards .care-card:nth-child(3),.care-cards .care-card:last-child{background:#dceceb;border-top:0}
 .about-introduction{display:flex;flex-direction:column;align-items:stretch;gap:28px}
 .about-introduction>div:nth-of-type(2){order:1}
 .about-introduction>div:nth-of-type(1){order:2}
 .about-introduction>.about-wide-quote{order:3}
 .about-training{gap:10px}
 .about-training h2{margin-bottom:8px}
 .about-training ul{margin-top:0;margin-bottom:0}
}
.directions-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}

.legal-copy{max-width:1060px;margin:auto;overflow-wrap:anywhere}.legal-copy p{max-width:none}.legal-copy h2{font-size:28px;margin:45px 0 20px}.legal-copy h3{font-size:23px;margin:30px 0 15px}.legal-copy li{line-height:1.8}@media(max-width:600px){.legal-copy h2{font-size:25px}.legal-copy h3{font-size:21px}}

.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.privacy-contact{margin:24px 0;padding:24px;background:#eef4f2;border-radius:12px}.privacy-contact p{margin:8px 0;overflow-wrap:anywhere}.form button:disabled{opacity:.65;cursor:wait}

/* Home booking follows the portrait in the DOM, retaining the desktop composition. */
.home-hero{column-gap:7%;row-gap:0}
.home-hero .hero-copy{grid-column:1;grid-row:1;align-self:end}
.home-hero .photo-wrap{grid-column:2;grid-row:1 / span 2}
.home-hero .hero-booking{grid-column:1;grid-row:2;justify-self:start;align-self:start}
@media(max-width:600px){
 .home-hero{display:flex;flex-direction:column;align-items:stretch;gap:28px}
 .home-hero .hero-copy{align-self:auto}
 .home-hero .hero-copy p:last-child{margin-bottom:0}
 .home-hero .hero-booking{align-self:stretch;gap:10px;padding:13px 10px;font-size:13px;white-space:nowrap}
 .home-story-intro{text-align:left}
 .home-story-intro h2 br{display:none}
 .home-about{padding-top:32px}
 .home-about .eyebrow{margin-bottom:12px}
 .methodology-areas{padding-top:32px}
 .methodology-areas>h2:first-child{margin-top:0}
 .contact-page-top{padding-top:36px;padding-bottom:34px}
 .contact-page-top h1{font-size:clamp(30px,8.4vw,36px);line-height:1.2;letter-spacing:-.6px;max-width:20ch;text-wrap:balance;margin-bottom:20px}
 .contact-page-top .eyebrow{margin-bottom:16px}
 .contact-page-top p{font-size:16px;line-height:1.65;margin-bottom:0}
}

.link-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
