@font-face{font-family:Poppins;src:url('assets/poppins-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--purple:#624473;--purple-dark:#483452;--bordeaux:#833e59;--ink:#3d4450;--muted:#606773;--cream:#f7faf8;--white:#fff;--mint:#e5f3ed;--mint-border:#b7d8cb;--mint-dark:#3b6967;--butter:#faf2d8;--line:#d7e2df;--radius:20px;color-scheme:light;font-size:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.75}
h1,h2,h3,p,figure,blockquote{margin:0}
h1,h2,h3{font-weight:700;line-height:1.3;letter-spacing:-.035em}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{color:inherit;cursor:pointer}
button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}
button{border:0}
img{display:block;max-width:100%;height:auto}
sup{font-size:12px}
svg{display:block;max-width:100%}
button svg{stroke:none}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #bca646;outline-offset:4px;border-radius:5px}
.app-welcome{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:22px;background:#f4f6f5e8;backdrop-filter:blur(7px);overscroll-behavior:contain;touch-action:none}
.app-welcome-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(390px,100%);aspect-ratio:1;min-height:350px;padding:37px 25px;border:1px solid #d6cde6;border-radius:24px;background:linear-gradient(135deg,#e8f4ef,#f1ecfa 70%,#f8edf3);box-shadow:0 16px 52px #48345218;text-align:center}
.app-welcome-role{font-size:15px;line-height:1.6;color:var(--mint-dark)}
.app-welcome-card h2{margin-top:14px;font-size:clamp(29px,7vw,36px);line-height:1.25;color:var(--purple-dark)}
.app-welcome-gift{margin-top:12px;font-size:16px;line-height:1.6;color:var(--ink)}
.app-welcome-invitation{max-width:285px;margin-top:25px;font-size:14px;line-height:1.7;color:var(--purple)}
.app-welcome-enter{margin-top:24px;min-width:116px;min-height:44px;padding:9px 22px;border-radius:24px;background:var(--purple);color:white;font-size:15px;font-weight:700;line-height:1.6}
.button.rdv-online{padding:0;border:0;background:transparent;min-height:44px;box-shadow:none}
.button.rdv-online:hover{background:transparent;filter:brightness(.94)}
.button.rdv-online{display:block;line-height:0}
.button.rdv-online>svg{display:block;width:152px;height:71px;aspect-ratio:660/305;overflow:hidden}
.header-book.rdv-online>svg{width:144px;height:67px}
@media(max-height:480px){.app-welcome{padding:12px}.app-welcome-card{aspect-ratio:auto;min-height:0;padding:21px 24px}.app-welcome-card h2{margin-top:7px;font-size:29px}.app-welcome-invitation{margin-top:13px}.app-welcome-enter{margin-top:14px}}
.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.section{padding-block:64px}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700;color:var(--mint-dark);margin-bottom:12px}
.small,.illustration-credit,.photo-credit{font-size:12px;line-height:1.8;color:var(--muted)}
.section-heading{max-width:780px;margin-bottom:28px}
.section-heading h2{font-size:clamp(27px,2.6vw,34px);color:var(--purple-dark)}
.section-heading>p:last-child:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;width:max-content;max-width:100%;min-height:44px;padding:11px 17px;background:var(--purple);border:1px solid var(--purple);border-radius:10px;color:white;font-size:13px;font-weight:700;line-height:1.6;text-align:center;transition:background .15s}
.button:hover{background:var(--purple-dark)}
.button-outline{background:transparent;color:var(--purple)}
.button-outline:hover{background:#f1edf8}
.button-bordeaux{background:var(--bordeaux);border-color:var(--bordeaux)}
.button-bordeaux:hover{background:#6c3048}
.button-small{font-size:12px;padding:9px 13px}
.text-link{display:inline-flex;align-items:center;gap:10px;background:transparent;padding:0;font-size:13px;color:var(--purple);text-decoration:underline;text-underline-offset:4px;line-height:1.8}
.text-link:hover{color:var(--mint-dark)}
.skip-link{position:fixed;top:8px;left:12px;z-index:100;padding:12px 18px;background:white;transform:translateY(-160%);font-size:14px}
.skip-link:focus{transform:none}
.draft-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:8px;font-size:12px;color:var(--muted)}
.draft-bar a{color:var(--purple)}
.site-header{position:sticky;top:0;z-index:40;background:#fcfaf6f5;backdrop-filter:blur(14px);border-block:1px solid var(--line)}
.header-inner{display:flex;align-items:center;gap:28px;min-height:92px}
.brand{display:flex;align-items:center;gap:20px;margin-right:auto;flex-shrink:0}
.brand img{width:188px}
.brand-city{border-left:1px solid var(--line);padding-left:20px;font-size:12px;color:var(--purple);white-space:nowrap}
.desktop-nav{display:flex;gap:25px;align-items:center;font-size:13px}
.desktop-nav a:hover,.footer-links a:hover{color:var(--purple);text-decoration:underline;text-underline-offset:5px}
.menu-toggle{display:none;align-items:center;gap:8px;min-height:44px;padding:8px 0;background:transparent;font-size:12px;color:var(--purple)}
.menu-lines{display:block;width:17px;height:11px;border-block:1.5px solid currentColor}
.mobile-menu{position:absolute;top:100%;inset-inline:0;padding-block:8px 18px;max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;background:#fff}
.mobile-menu a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--purple)}
.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:54px;padding-block:45px 28px}
.hero h1{font-size:clamp(30px,3vw,42px);color:var(--purple-dark);line-height:1.25}
.hero h1 span{color:var(--mint-dark)}
.hero-intro{font-size:18px;line-height:1.65;margin-top:23px}
.hero-intro strong{color:var(--purple)}
.hero-welcome{font-size:14px;font-weight:700;color:var(--mint-dark);margin-top:18px}
.hero-text{font-size:14px;color:var(--muted);margin-top:8px;max-width:485px}
.audience-note{font-size:12px;color:var(--muted);margin-top:18px}
.hero-photo{overflow:hidden;border-radius:var(--radius);background:var(--butter);border:1px solid #e2d7bf}
.hero-photo img{width:100%}
.hero-photo figcaption{text-align:center;font-size:12px;color:var(--purple);padding:10px 16px}
#seances{padding-top:37px}
.practitioner-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.practitioner{min-width:0;display:flex;flex-direction:column;background:white;border:1px solid var(--mint-border);border-radius:var(--radius);overflow:hidden}
.practitioner-psy{border-color:#dfc9d1}
.practitioner-main{display:flex;align-items:center;gap:14px;padding:27px 24px 22px;flex:1}
.practitioner-copy{flex:1;min-width:0}
.service-name{font-size:18px;font-weight:700;line-height:1.5;color:var(--mint-dark);margin-bottom:8px}
.practitioner-psy .service-name{color:var(--bordeaux)}
.session-duration{display:inline-block;font-size:12px;font-weight:400;line-height:1.6;padding:3px 8px;margin-top:5px;border-radius:6px;background:var(--mint);color:var(--muted);vertical-align:middle;white-space:nowrap}
.practitioner-psy .session-duration{background:#f7edf0}
.service-purpose{font-size:13px;line-height:1.75;color:var(--mint-dark);margin-bottom:18px}
.practitioner h3{font-size:21px;color:var(--purple-dark);margin-top:17px;margin-bottom:7px}
.practitioner-role{font-size:13px;line-height:1.7;color:var(--muted)}
.practitioner-role span{font-size:12px}
.session-description{font-size:14px;line-height:1.8;margin-top:17px}
.practitioner-art{width:138px;height:242px;object-fit:contain;flex:0 0 138px}
.art-celia{border-radius:14px}
.practitioner-bottom{padding:0 24px 23px;display:grid;grid-template-rows:auto 1fr;gap:17px}
.practitioner-more{padding-top:15px;border-top:1px solid var(--line);min-height:84px}
.comic-entry-button{display:flex;align-items:center;gap:12px;background:transparent;padding:0;text-align:left;width:100%;color:var(--purple)}
.comic-entry-button>svg{width:70px;height:54px;border-radius:7px;overflow:hidden;flex-shrink:0}
.comic-entry-button>span{font-size:13px;line-height:1.7;font-weight:700}
.comic-entry-button strong{display:block;font-size:12px;line-height:1.7;font-weight:400;color:var(--muted)}
.inline-detail>summary,.support-detail>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;color:var(--purple);font-size:13px;font-weight:700;line-height:1.8;min-height:44px}
.inline-detail>summary>span:last-child,.support-detail>summary>span:last-child{font-size:22px;font-weight:400;line-height:1;flex-shrink:0}
.inline-detail[open]>summary>span:last-child,.support-detail[open]>summary>span:last-child{transform:rotate(45deg)}
.inline-detail>div{padding-top:10px;font-size:13px;color:var(--muted)}
.inline-detail>div>p+p{margin-top:10px}
.session-details{display:grid;gap:10px;margin-top:24px}
.support-detail{border:1px solid var(--line);border-radius:12px;background:#fffdfa;overflow:hidden;scroll-margin-top:110px}
.support-detail>summary{padding:14px 18px}
.detail-body,.conditions-body{padding:3px 20px 20px;font-size:14px;color:var(--muted)}
.detail-body>p,.conditions-body>p{margin-bottom:13px}
.detail-body>p:last-child,.conditions-body>p:last-child{margin-bottom:0}
.thought-list{display:grid;gap:9px}
.thought{background:var(--mint);border:1px solid var(--mint-border);border-radius:9px;overflow:hidden}
.thought-yellow{background:var(--butter);border-color:#e6dbb7}
.thought-peach{background:#faeee7;border-color:#e5d1c5}
.thought>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;font-size:13px;line-height:1.7;font-weight:700;color:var(--purple)}
.thought>summary>span:last-child{font-size:22px;font-weight:400;flex-shrink:0}
.thought[open]>summary>span:last-child{transform:rotate(45deg)}
.thought>p{font-size:13px;padding:0 15px 15px;color:var(--muted)}
.sequence{margin-top:20px;padding-top:18px;border-top:1px solid var(--mint-border)}
.sequence-tabs{display:flex;gap:8px;margin-bottom:18px}
.sequence-tab{flex:1;padding:10px 13px;min-height:44px;border-radius:9px;background:#f0edf5;color:var(--purple);font-size:13px;line-height:1.6}
.sequence-tab[aria-selected=true]{background:var(--purple);color:white}
.sequence-images{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sequence-images figure{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.sequence-illustration{position:relative;width:100%;display:block;padding:0;background:#eee5da}
.sequence-illustration svg{width:100%;height:auto;aspect-ratio:3.3}
.sequence-images figcaption{font-size:13px;line-height:1.7;color:var(--purple);padding:12px 14px}
.sequence-images figcaption>span,.vignette-dialog figcaption>span{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;margin-right:6px;background:var(--mint);border-radius:50%;font-size:12px}
.sequence-text{margin-top:15px;font-size:13px}
.sequence .illustration-credit{margin-top:14px}
.venue-section{background:#eef5ee;border-block:1px solid #dce7dc}
.visit-layout{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:start}
.visit-photo{padding:0;border-radius:16px;overflow:hidden;background:var(--butter);border:1px solid #e4d6b7;max-width:100%}
.visit-photo>img{height:345px;width:100%;object-fit:contain;background:#f5ead3}
.visit-photo>span{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 15px;font-size:13px;color:var(--purple)}
address{font-size:15px;font-style:normal;line-height:1.8}
.transit{display:flex;gap:8px 19px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:12px}
.visit-links{display:flex;gap:9px 23px;flex-wrap:wrap;margin-top:17px}
.other-resources{border-top:1px solid #cbdccd;margin-top:25px;padding-top:20px;scroll-margin-top:110px}
.other-resources h3{font-size:18px;color:var(--purple-dark);letter-spacing:-.02em}
.other-resources>p{font-size:13px;color:var(--muted);margin-top:7px}
.resource-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;margin-top:13px}
.resource-shortcuts a{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--purple);text-decoration:underline;text-underline-offset:4px;min-height:44px}
.resource-shortcuts img{width:37px;height:30px;object-fit:contain}
.membership-compact{margin-top:14px;border-top:1px solid #cbdccd}
.membership-compact>summary{padding-block:12px}
.membership-compact>div{padding:0 0 12px}
.membership-compact .text-link{font-size:12px;margin:12px 20px 0 0}
.house-gallery{margin-top:24px;background:#f9fcf8;border-color:#cbdccd}
.photo-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.gallery-photo{position:relative;display:block;border-radius:11px;overflow:hidden;background:white;padding:0;text-align:left}
.gallery-photo img{width:100%;height:185px;object-fit:cover}
.gallery-photo>span{display:flex;justify-content:space-between;align-items:center;gap:9px;font-size:12px;padding:11px 13px;color:var(--purple);line-height:1.7}
.photo-credit{margin-top:13px}
.sharing-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.share-panel{border:1px solid var(--mint-border);background:white;border-radius:var(--radius);padding:25px 27px}
.flyer-panel{border-color:#e4d8b5;background:#fffaf0}
.share-panel h3{font-size:21px;color:var(--purple-dark)}
.share-panel>p:not(.small){font-size:14px;margin-top:12px;color:var(--muted)}
.share-panel>.button{margin-top:20px}
.share-panel>.small{margin-top:18px}
.sharing-downloads{display:flex;align-items:center;flex-wrap:wrap;gap:13px 19px;margin-top:20px}
.sharing-downloads>.button{flex-basis:auto}
.sharing-downloads .text-link{font-size:12px;min-height:36px}
.sharing-downloads .share-status{flex-basis:100%}
.app-sharing{margin-top:24px;padding-top:21px;border-top:1px solid var(--line)}
.app-sharing>.small{margin-top:8px}
.share-status{font-size:12px;color:var(--mint-dark);margin-top:11px}
.share-status:empty{display:none}
.share-link-fallback{margin-top:12px;max-width:600px}
.share-link-fallback label{font-size:12px}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-block:30px}
.site-footer img{width:155px}
.site-footer p{font-size:12px;color:var(--muted);margin-top:10px}
.footer-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px}
.footer-links button{background:transparent;padding:0;font-size:12px}
.footer-note{text-align:right}

dialog{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:30px;border:1px solid var(--line);border-radius:20px;background:var(--cream);color:var(--ink);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 15px 80px #21113838}
dialog::backdrop{background:#25173d99;backdrop-filter:blur(4px)}
.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}
.dialog-heading h2{font-size:27px;color:var(--purple-dark)}
.close-dialog{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--purple);font-size:28px;line-height:1;padding:0}
.dialog-heading .eyebrow{margin-bottom:7px}
.demo-notice{font-size:12px;line-height:1.8;background:var(--butter);border:1px solid #e8ddb8;border-radius:10px;padding:13px 16px;margin-bottom:20px;color:var(--muted)}
form{display:grid;gap:15px}
label{display:block;font-size:13px;color:var(--purple)}
input,select,textarea{display:block;width:100%;min-width:0;margin-top:7px;border:1px solid #c7becf;border-radius:8px;padding:11px 12px;background:white;color:var(--ink);font-size:14px;line-height:1.7}
textarea{resize:vertical}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.optional{font-size:12px;color:var(--muted)}
.character-count{text-align:right;font-size:12px;color:var(--muted);margin-top:-10px}
.consent-label{display:flex;gap:11px;align-items:flex-start;font-size:12px;line-height:1.8;color:var(--muted)}
.consent-label input{width:18px;height:18px;margin:2px 0 0;flex:0 0 18px;accent-color:var(--purple)}
.feedback-preview{padding:23px;background:var(--mint);border:1px solid var(--mint-border);border-radius:12px}
.feedback-preview blockquote{font-size:17px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin-block:16px}
.feedback-preview>p{font-size:13px;margin-bottom:16px}
.photo-dialog{width:min(1100px,calc(100% - 32px));padding:20px}
.photo-dialog>.close-dialog{margin-left:auto;margin-bottom:12px}
.photo-dialog figure>img{max-height:70dvh;width:100%;object-fit:contain;border-radius:10px}
.photo-dialog figcaption{font-size:13px;text-align:center;color:var(--muted);padding:13px 5px 0}
.comic-dialog{width:min(1000px,calc(100% - 32px))}
.comic-instruction{font-size:13px;color:var(--muted);margin-bottom:18px}
.comic-explanation{background:var(--mint);border:1px solid var(--mint-border);border-radius:13px;padding:21px 23px;margin-bottom:23px}
.comic-explanation>p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:12px}
.comic-explanation>.comic-service-purpose{font-size:15px;color:var(--purple);font-weight:700;margin-top:0}
.comic-explanation>.shiatsu-definition{font-size:14px;color:var(--mint-dark);font-weight:700}
.comic-explanation>h3{font-size:15px;color:var(--mint-dark);letter-spacing:0;margin-top:18px}
.comic-explanation>.small{font-size:12px}
.shiatsu-benefits{font-size:13px;line-height:1.9;color:var(--muted);padding-left:20px;margin-block:12px}
.shiatsu-prevention{margin-top:17px;background:#fcfefd;border:1px solid var(--mint-border);border-radius:10px;padding:15px 17px}
.shiatsu-prevention>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;line-height:1.8;color:var(--purple);font-weight:700}
.shiatsu-prevention>summary>span:last-child{font-size:22px;font-weight:400;flex-shrink:0}
.shiatsu-prevention[open]>summary>span:last-child{transform:rotate(45deg)}
.shiatsu-prevention>p{font-size:13px;color:var(--muted);margin-top:13px}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.story-grid>figure{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}
.comic-tile{position:relative;display:block;width:100%;background:#eee5da;padding:0}
.comic-tile>svg{width:100%;height:auto;aspect-ratio:2.025}
.story-grid figcaption{font-size:13px;padding:14px 16px;color:var(--muted)}
.comic-focus svg{width:100%;height:auto;aspect-ratio:2.025;max-height:53dvh;border-radius:10px;background:white}
.comic-focus figcaption{font-size:17px;padding:20px 5px 3px;color:var(--ink)}
.comic-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:22px}
.comic-controls .button:disabled{opacity:.4;cursor:default}
.comic-controls>p{font-size:13px;color:var(--purple);font-weight:700;white-space:nowrap}
.comic-focus>.text-link{display:flex;margin:18px auto 0;width:max-content;font-size:13px}
.comic-dialog>.dialog-pane>.illustration-credit{margin-top:20px}
.vignette-dialog{width:min(1100px,calc(100% - 32px))}
.vignette-dialog figure>svg{width:100%;height:auto;max-height:57dvh;aspect-ratio:3.3;border-radius:10px;background:white}
.vignette-dialog figcaption{font-size:17px;line-height:1.8;padding:20px 5px 3px;color:var(--purple)}
.info-dialog>.dialog-pane>p{font-size:14px;color:var(--muted);margin-bottom:15px}
.info-dialog>.dialog-pane>p.small{font-size:12px}
.info-dialog>.dialog-pane>.text-link{font-size:13px}
@media(max-width:1050px){
 .header-inner{gap:20px}.brand img{width:165px}.brand-city{display:none}.desktop-nav{gap:20px}.hero{gap:30px}.hero-intro{font-size:17px}.practitioner-main{padding:23px 20px 21px;gap:10px}.practitioner-art{width:112px;flex-basis:112px;height:230px}.practitioner-bottom{padding-inline:20px}.service-name{font-size:17px}.session-description{font-size:13px}.visit-layout{grid-template-columns:240px 1fr;gap:30px}.visit-photo>img{height:330px}.footer-note{max-width:150px}
}
@media(max-width:780px){
 .container{width:calc(100% - 40px)}.section{padding-block:46px}.draft-bar{font-size:12px}.draft-bar>span{display:none}.draft-bar{justify-content:flex-end;padding-block:6px}.header-inner{min-height:78px;gap:18px}.brand img{width:156px}.desktop-nav{display:none}.menu-toggle{display:flex}.header-book{margin-left:auto}.hero{grid-template-columns:1fr 1fr;gap:25px;padding-top:32px}.hero h1{font-size:30px}.hero-intro{font-size:15px;margin-top:17px}.hero-welcome,.hero-text{font-size:13px}.hero-welcome{margin-top:15px}.audience-note{margin-top:13px}.hero-photo figcaption{font-size:12px;padding:9px 10px}.practitioner-grid{grid-template-columns:1fr;gap:20px}.practitioner-main{gap:22px;padding:25px 25px 20px}.practitioner-art{width:155px;flex-basis:155px;height:230px}.service-name{font-size:19px}.service-purpose{font-size:13px}.session-description{font-size:14px}.practitioner h3{font-size:22px}.practitioner-bottom{padding:0 25px 24px}.practitioner-more{min-height:0}.visit-layout{grid-template-columns:200px 1fr;gap:25px}.visit-photo>img{height:310px}.visit-links{gap:9px}.photo-gallery{gap:12px}.gallery-photo img{height:140px}.sharing-grid{gap:18px}.share-panel{padding:23px}.share-panel h3{font-size:20px}.site-footer{flex-wrap:wrap;align-items:flex-start}.footer-note{max-width:none;text-align:left;flex-basis:100%;margin-top:0!important}.sequence-tab{font-size:12px}.detail-body,.conditions-body{font-size:13px}
}
@media(max-width:580px){
 .hero{grid-template-columns:1fr;gap:23px;padding-top:28px}.hero-copy{max-width:480px}.hero h1{font-size:34px}.hero-intro{font-size:17px}.hero-welcome,.hero-text{font-size:14px}.hero-photo{max-width:480px;width:100%;justify-self:center}.hero-photo figcaption{font-size:12px}.header-book{display:none}.menu-toggle{margin-left:auto}.header-inner{min-height:73px}.brand img{width:163px}.brand-city{display:block;padding-left:13px}.brand{gap:13px}.draft-bar a{font-size:12px}.section-heading{margin-bottom:22px}.section-heading h2{font-size:28px}.section-heading>p:last-child:not(.eyebrow){font-size:13px}#seances{padding-top:25px}.practitioner-main{padding:24px 19px 20px;gap:13px;align-items:flex-start}.practitioner-art{width:100px;flex-basis:100px;height:228px;align-self:center}.service-name{font-size:17px}.service-purpose{font-size:12px;margin-bottom:15px}.practitioner h3{font-size:20px}.practitioner-role{font-size:12px}.session-description{font-size:13px;margin-top:13px}.practitioner-bottom{padding:0 19px 20px}.practitioner-more{padding-top:14px}.comic-entry-button>svg{width:62px;height:48px}.comic-entry-button>span{font-size:13px}.comic-entry-button strong{font-size:12px}.support-detail>summary{font-size:13px;padding:13px 15px}.detail-body,.conditions-body{padding:2px 15px 17px}.thought>summary{font-size:13px;padding:12px 13px}.thought>p{padding:0 13px 14px}.sequence-tabs{gap:7px}.sequence-tab{padding:10px 9px}.sequence-images{grid-template-columns:1fr;gap:13px}.sequence-images figcaption{font-size:13px}.visit-layout{grid-template-columns:1fr;gap:23px}.visit-photo{display:grid;grid-template-columns:115px 1fr;text-align:left;width:100%}.visit-photo>img{height:160px;width:115px;object-fit:cover}.visit-photo>span{font-size:16px;font-weight:700;padding:20px;gap:15px}.visit-content address{font-size:14px}.visit-links{gap:11px 20px}.other-resources{margin-top:23px}.resource-shortcuts{gap:5px 18px}.photo-gallery{grid-template-columns:1fr;gap:13px}.gallery-photo{display:grid;grid-template-columns:115px 1fr;align-items:center}.gallery-photo img{height:120px}.gallery-photo>span{font-size:13px;padding:15px}.sharing-grid{grid-template-columns:1fr;gap:17px}.share-panel{padding:23px}.share-panel>p:not(.small){font-size:13px}.app-sharing>.text-link{font-size:13px}.site-footer{gap:20px}.footer-links{gap:12px 20px}.site-footer>div:first-child{flex-basis:100%}.site-footer img{width:150px}.site-footer p{font-size:12px}.footer-note{font-size:12px}dialog{padding:22px 18px;max-height:calc(100dvh - 24px);width:calc(100% - 24px);border-radius:16px}.dialog-heading{gap:12px}.dialog-heading h2{font-size:23px}.close-dialog{width:44px;height:44px;flex-basis:44px}.form-row{grid-template-columns:1fr}.comic-dialog,.vignette-dialog{width:calc(100% - 24px)}.comic-explanation{padding:18px 16px}.comic-explanation>.comic-service-purpose{font-size:14px}.comic-explanation>.shiatsu-definition{font-size:13px}.comic-instruction{font-size:12px}.story-grid{grid-template-columns:1fr;gap:17px}.story-grid figcaption{font-size:13px;padding:13px 15px}.comic-focus svg{max-height:44dvh}.comic-focus figcaption{font-size:15px;padding:17px 2px 2px}.comic-controls{gap:8px}.comic-controls .button{font-size:12px;padding:10px 11px}.comic-controls>p{font-size:12px}.vignette-dialog figure>svg{max-height:48dvh}.vignette-dialog figcaption{font-size:15px}.photo-dialog{padding:15px}.photo-dialog figure>img{max-height:66dvh}
}
@media(max-width:365px){
 .container{width:calc(100% - 32px)}.brand-city{display:none}.hero h1{font-size:30px}.practitioner-main{gap:10px;padding-inline:16px}.practitioner-art{width:78px;flex-basis:78px;height:205px}.practitioner-bottom{padding-inline:16px}.practitioner h3{font-size:18px}.service-name{font-size:16px}.comic-entry-button{gap:9px}.comic-entry-button>svg{width:54px;height:42px}.comic-entry-button>span{font-size:12px}.share-panel{padding:20px}.visit-photo>span{padding:15px;font-size:15px}.comic-controls .button{padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(max-width:580px){.hero h1{font-size:clamp(26px,7vw,30px)}}


/* Soft colour washes drawn from the supplied NAMIDŌ illustrations. */
body{background:#fcfafd}
.site-header{background:#fffffff5;border-color:#e2dce9}
.draft-bar,.draft-bar a{color:#596f71}
.hero{margin-top:28px;padding:32px 35px;background:linear-gradient(125deg,#e7f3ed,#edf3f8 58%,#f4f0f7);border:1px solid #c8ddd5;border-radius:22px;gap:37px;grid-template-columns:1.15fr .85fr;color:var(--ink)}
.hero .eyebrow{color:#4c7270;letter-spacing:.08em;font-size:12px}
.hero h1{color:#4e365c;font-size:clamp(31px,3.4vw,44px);line-height:1.27}
.hero h1 span{color:#416f71}
.hero-intro{font-size:15px;line-height:1.85;margin-top:21px;color:#48545e}
.hero-text{font-size:14px;line-height:1.85;margin-top:15px;color:#53616a}
.hero-welcome{font-size:13px;line-height:1.85;color:#456a66;margin-top:18px;font-weight:700}
.hero .audience-note{color:#606773;font-size:12px;margin-top:16px}
.hero-photo{border:1px solid #c5dbd2;border-radius:15px;background:#f8fbf7;align-self:stretch;display:flex;flex-direction:column;box-shadow:0 6px 25px #4664560a}
.hero-photo img{width:100%;height:350px;object-fit:cover;object-position:center 42%;flex:1;min-height:0}
.hero-photo figcaption{background:#f3f8f1;color:#536e68;font-size:12px;padding:12px 13px}
.button{background:#d6ebe5;border-color:#afcfc4;color:#315e5b;box-shadow:0 2px 7px #315e5b06}
.button:hover{background:#c9e2d9}
.button-outline{background:#fcfdfb;color:#624473;border-color:#cbbfd5}
.button-outline:hover{background:#f0ecf6}
.button-bordeaux{background:#e9e2f1;border-color:#cec0da;color:#75445c}
.button-bordeaux:hover{background:#e1d6ec}
#seances{padding-top:45px}
.practitioner-shiatsu{background:#fff;border:1px solid #bdd8ca;border-top:3px solid #a3cab9}
.practitioner-psy{background:linear-gradient(145deg,#faf8fc,#efedf7);border:1px solid #d6cce2;border-top:3px solid #b9a9cb}
.practitioner-main{display:grid;grid-template-columns:minmax(0,1fr)168px;gap:0 22px;align-items:start;padding:27px 25px 22px}
.practitioner-copy{display:contents}
.practitioner-copy>.service-name{grid-column:1;grid-row:1}
.practitioner-copy>.service-purpose{grid-column:1;grid-row:2}
.practitioner-copy>h3{grid-column:1;grid-row:3;margin-top:13px}
.practitioner-copy>.practitioner-role{grid-column:1;grid-row:4}
.practitioner-copy>.session-description{grid-column:1/-1;grid-row:5;margin-top:20px;font-size:14px;line-height:1.85}
.practitioner-art{grid-column:2;grid-row:1/5;align-self:center;width:100%;height:auto!important;max-height:none;min-width:0;flex-basis:auto;margin:0}
.portrait-geraldine{aspect-ratio:3/4;border-radius:14px;background:#f7f4ec;overflow:hidden;border:1px solid #d9ded3}
.photo-celia{aspect-ratio:1;object-fit:cover;border-radius:15px;border:1px solid #d6cddd;box-shadow:0 6px 22px #5849690c}
.practitioner-more{min-height:227px;border-top-color:#c9ded1;padding-top:17px}
.practitioner-psy .practitioner-more{border-top-color:#d8cfe3}
.comic-entry-button{gap:17px;align-items:center}
.comic-entry-button>img{width:178px;height:201px;flex:0 0 178px;object-fit:contain;border-radius:11px;border:1px solid #d9e4de;background:#fafcf9}
.comic-entry-button>span{font-size:15px;color:#456964;line-height:1.7}
.comic-entry-button strong{font-size:12px;color:#606f70;line-height:1.9;margin-top:7px}
.psy-more{display:grid;grid-template-columns:178px minmax(0,1fr);align-items:center;gap:17px}
.celia-avatar-large{display:block;width:178px;height:201px;object-fit:contain;border-radius:12px;border:1px solid #e5deeb;background:#f8f4ec}
.psy-more-copy{min-width:0}
.psy-more .inline-detail>summary{color:#715366}
.combination-section{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:33px;padding:31px;margin-bottom:54px;background:linear-gradient(125deg,#e9f4f2,#edf1f8 66%,#f2eef7);border:1px solid #cadbdc;border-left:3px solid #c3b4d2;border-radius:19px}
.combination-heading h2{font-size:30px;line-height:1.4;color:#513c61}
.combination-heading>.eyebrow{color:#62717a}
.combination-heading>p:not(.eyebrow){font-size:14px;line-height:1.85;color:#53646d;margin-top:17px}
.combination-heading>.combination-note{font-size:12px!important;line-height:1.9!important}
.combination-story{min-width:0}
.combination-story .sequence{margin:0;padding:0;border:0}
.sequence-tabs{background:#e0e8ed;border:1px solid #d0dce0;border-radius:12px;padding:5px;gap:5px}
.sequence-tab{background:transparent;color:#536673}
.sequence-tab[aria-selected=true]{background:#e2d9ed;color:#553e69;box-shadow:0 2px 7px #604d790a}
.sequence-images{gap:12px}
.sequence-images figure{border-color:#d4dddf}
.sequence-images figcaption{font-size:12px;padding:11px 12px}
.sequence-text{font-size:13px;color:#53646d}
.venue-section{background:linear-gradient(130deg,#edf5ee,#f3f8f2);border-color:#d7e6dc}
.visit-photo{border-color:#d1dfce;background:#f8f9f0}
.visit-photo>span{background:#f4f8ee}
.visit-photo>img{background:#edf2e7}
.other-resources,.membership-compact{border-color:#d2e1d5}
.house-gallery{background:#f9fcf7;border-color:#d3e0d0}
.sharing-section{background:linear-gradient(130deg,#e0f0e9,#e8f0f5 58%,#eeebf5);border:1px solid #c0d9d1;border-radius:22px;padding:34px;margin-block:50px;color:var(--ink);box-shadow:0 8px 34px #3c696209}
.sharing-section>.section-heading{margin-bottom:23px}
.sharing-section>.section-heading>.eyebrow{color:#4f7770}
.sharing-section>.section-heading h2{color:#503c60}
.sharing-invitation{display:grid;grid-template-columns:1.3fr .85fr;gap:28px;align-items:center;background:linear-gradient(125deg,#fbf6e6,#f4f8ee);border:1px solid #e1dfc4;border-radius:16px;padding:26px;margin-bottom:27px;color:#465b5b}
.sharing-invitation h3{font-size:24px;line-height:1.4;color:#446763}
.sharing-invitation p{font-size:14px;line-height:1.85;margin-top:13px;color:#5e656b}
.sharing-invitation p+p{font-size:13px;font-weight:700;color:#4b6963}
.sharing-invitation-action{min-width:0}
.sharing-invitation-action>.button{background:#d4e9df;border-color:#afcfc0;color:#365e56;font-size:13px;text-align:left}
.sharing-invitation-action>.button:hover{background:#c6dfd2}
.sharing-invitation-action>.small{font-size:12px;font-weight:400;line-height:1.8;margin-top:10px;color:#606773}
.sharing-invitation-action>.share-status{color:#3d6962;font-size:12px;font-weight:400}
.sharing-grid{gap:23px;align-items:start}
.share-panel{color:var(--ink);background:#f9fcf8;border:1px solid #cbded3;padding:25px}
.flyer-panel{background:#f3f9f2;border-color:#c5d9c1}
.solo-flyer-panel{background:#f3f6fb;border-color:#cbd7e7}
.share-panel h3{font-size:22px;color:#5a4669}
.share-panel>p:not(.small){font-size:13px}
.flyer-preview{display:block;width:min(275px,100%);margin:23px auto 0;text-align:center}
.flyer-preview img{width:100%;height:auto;border-radius:7px;box-shadow:0 5px 19px #48625b15;border:1px solid #d4ded6}
.flyer-preview>span{display:block;font-size:12px;color:#624473;text-decoration:underline;text-underline-offset:4px;margin-top:11px}
.solo-flyer-panel .flyer-preview{width:min(275px,100%)}
.sharing-downloads{justify-content:center;gap:12px 17px}
.sharing-downloads>.button{font-size:12px}
.feedback-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;column-gap:25px;background:#f6f3fa;border-color:#d8cde4}
.feedback-panel h3,.feedback-panel>p{grid-column:1}
.feedback-panel>.button{grid-column:2;grid-row:1/4;align-self:center;margin-top:0}
.feedback-panel>.small{margin-top:10px}
.sharing-section .app-sharing{border-color:#c3d6d4}
.sharing-section .app-sharing>.text-link{color:#624473}
.sharing-section .preview-sharing-note,.sharing-section .app-sharing>.share-status,.sharing-section .share-link-fallback label{color:#606773}



@media(max-width:1050px){.hero{padding:29px;gap:27px}.hero h1{font-size:36px}.hero-photo img{height:335px}.practitioner-main{grid-template-columns:minmax(0,1fr)145px;gap:0 16px;padding-inline:22px}.combination-section{gap:25px;padding:27px}.combination-heading h2{font-size:27px}.sharing-invitation{grid-template-columns:1fr .85fr;gap:22px}.sharing-invitation h3{font-size:21px}.comic-entry-button>img{width:154px;height:174px;flex-basis:154px}.psy-more{grid-template-columns:154px minmax(0,1fr)}.celia-avatar-large{width:154px;height:174px}.practitioner-more{min-height:197px}}
@media(max-width:980px){.practitioner-grid{grid-template-columns:1fr}.practitioner-main{grid-template-columns:minmax(0,1fr)185px;gap:0 27px;padding:27px}.practitioner-bottom{padding-inline:27px}.comic-entry-button>img{width:178px;height:201px;flex-basis:178px}.psy-more{grid-template-columns:178px minmax(0,1fr)}.celia-avatar-large{width:178px;height:201px}.practitioner-more{min-height:224px}}
@media(max-width:780px){.hero{grid-template-columns:1fr 1fr;gap:23px;padding:25px}.hero h1{font-size:32px}.hero-intro{font-size:14px}.hero-text{font-size:13px}.hero-welcome{font-size:12px}.hero-photo img{height:320px}.combination-section{grid-template-columns:1fr;gap:23px;margin-bottom:44px;padding:25px}.combination-heading{max-width:600px}.combination-heading h2{font-size:29px}.combination-heading>p:not(.eyebrow){font-size:13px;margin-top:13px}.combination-story .sequence-images{grid-template-columns:1fr 1fr}.sharing-section{padding:27px;margin-block:40px}.sharing-invitation{grid-template-columns:1fr;gap:20px;padding:23px}.sharing-invitation-action>.button{font-size:13px}.sharing-invitation h3{font-size:23px}.share-panel{padding:21px}.share-panel h3{font-size:20px}.feedback-panel{display:block}.feedback-panel>.button{margin-top:18px}}
@media(max-width:580px){.hero{padding:25px 22px;margin-top:20px;grid-template-columns:1fr;gap:24px;border-radius:19px}.hero .eyebrow{font-size:12px;line-height:1.8;letter-spacing:.07em}.hero h1{font-size:clamp(29px,8vw,35px);line-height:1.3}.hero-intro{font-size:14px;margin-top:17px}.hero-text{font-size:13px;margin-top:13px}.hero-welcome{font-size:13px;margin-top:15px}.hero .audience-note{font-size:12px;margin-top:14px}.hero-photo{align-self:auto;border-radius:12px}.hero-photo img{height:220px;max-height:220px;min-height:220px;flex:auto}.hero-photo figcaption{font-size:12px;padding:10px 12px}#seances{padding-top:37px}.practitioner-main{grid-template-columns:minmax(0,1fr)118px;gap:0 15px;padding:23px 20px 20px}.practitioner-copy>.session-description{font-size:13px;margin-top:18px}.practitioner-bottom{padding-inline:20px}.practitioner-more{min-height:184px}.comic-entry-button{gap:15px}.comic-entry-button>img{width:142px;height:160px;flex-basis:142px}.comic-entry-button>span{font-size:13px}.comic-entry-button strong{font-size:12px}.psy-more{grid-template-columns:142px minmax(0,1fr);gap:15px}.celia-avatar-large{width:142px;height:160px}.combination-section{width:calc(100% - 40px);padding:23px 19px;border-left-width:3px}.combination-heading h2{font-size:27px}.combination-story .sequence-images{grid-template-columns:1fr}.sequence-images figcaption{font-size:13px}.sharing-section{padding:24px 19px;border-radius:19px}.sharing-section>.section-heading h2{font-size:28px}.sharing-invitation{padding:21px 18px;gap:18px;border-radius:14px}.sharing-invitation h3{font-size:22px}.sharing-invitation p{font-size:13px}.sharing-invitation p+p{font-size:12px}.sharing-invitation-action>.button{font-size:12px;gap:10px;padding:11px 13px}.sharing-invitation-action>.small{font-size:12px}.share-panel{padding:23px 20px}.flyer-preview,.solo-flyer-panel .flyer-preview{width:min(275px,100%)}.sharing-downloads{gap:12px}.share-panel h3{font-size:21px}.feedback-panel>.button{font-size:13px}}
@media(max-width:365px){.hero{padding:22px 19px}.hero h1{font-size:29px}.hero-photo img{height:200px;min-height:200px;max-height:200px}.practitioner-main{grid-template-columns:minmax(0,1fr)105px;padding-inline:16px;gap:0 12px}.practitioner-bottom{padding-inline:16px}.comic-entry-button>img{width:124px;height:140px;flex-basis:124px}.psy-more{grid-template-columns:124px minmax(0,1fr);gap:12px}.celia-avatar-large{width:124px;height:140px}.practitioner-more{min-height:162px}.combination-section{width:calc(100% - 32px);padding:21px 16px}.sharing-section{padding:22px 16px}.sharing-invitation{padding:19px 16px}.sharing-invitation h3{font-size:21px}.share-panel{padding:22px 17px}}

.hero-photo.welcome-pair{align-self:center}
.hero-photo.welcome-pair>img{width:100%;height:auto;min-height:0;max-height:none;flex:none;aspect-ratio:3/2;object-fit:contain;object-position:center}
.shiatsu-profession{margin-top:27px;padding:25px;background:linear-gradient(125deg,#f5faf6,#f4f6fa);border:1px solid #cbded5;border-radius:18px}
.profession-intro{max-width:945px}
.profession-intro>.eyebrow{margin-bottom:9px}
.profession-question{font-size:13px;color:#68717a;line-height:1.8;margin-bottom:7px}
.profession-intro>h3{font-size:23px;line-height:1.45;color:var(--purple-dark);letter-spacing:-.025em}
.profession-intro>p:last-child{font-size:13px;line-height:1.9;color:var(--muted);margin-top:13px}
.profession-intro strong{color:#4e5d66;font-weight:700}
.profession-skills{list-style:none;padding:0;margin:23px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.profession-skills>li{min-width:0;padding:15px 14px;background:#fcfdfb;border:1px solid #d5e3da;border-radius:12px}
.skill-number{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;background:#e2efe6;border-radius:50%;font-size:12px;line-height:1;font-weight:700;color:#44675b;margin-bottom:11px}
.profession-skills h4{font-size:13px;line-height:1.7;color:#4b5e61;letter-spacing:0;margin:0 0 9px;font-weight:700}
.profession-skills p{font-size:12px;line-height:1.85;color:var(--muted)}
@media(max-width:980px){.profession-skills{grid-template-columns:repeat(3,minmax(0,1fr))}.profession-skills>li{padding:16px}.profession-intro>h3{font-size:22px}}
@media(max-width:580px){.shiatsu-profession{margin-top:22px;padding:22px 18px}.profession-intro>h3{font-size:22px;line-height:1.5}.profession-intro>p:last-child{font-size:13px}.profession-skills{grid-template-columns:1fr;gap:9px;margin:20px 0}.profession-skills>li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:0 12px;padding:14px}.skill-number{grid-row:1/3;grid-column:1;margin:0}.profession-skills h4{grid-column:2;font-size:13px;margin:0 0 5px}.profession-skills p{grid-column:2;font-size:12px}}

/* Portraits assortis, explications courtes et contacts de séance. */
.practitioner-portrait{aspect-ratio:3/4;width:100%;height:auto!important;align-self:start;object-fit:cover;border:1px solid #d6d5df;border-radius:14px;background:#faf7f0;overflow:hidden;box-shadow:0 4px 15px #58496908}
.profession-qualification{padding:20px 22px;border:1px solid #d8dce7;border-radius:12px;background:linear-gradient(115deg,#f6f9fb,#f5f2fa)}
.profession-qualification h4{font-size:14px;line-height:1.7;color:var(--purple-dark);margin-bottom:9px;letter-spacing:0}
.profession-qualification p{font-size:13px;line-height:1.9;color:var(--muted);max-width:950px}
.profession-qualification strong{color:#4e5b68}
.profession-qualification>.text-link{font-size:12px;line-height:1.8;margin-top:13px}
.reassurance{padding:23px;border:1px solid #d9d7e5;border-radius:15px;background:#faf9fc}
.reassurance>h3{font-size:21px;line-height:1.5;color:var(--purple-dark);letter-spacing:-.02em;margin-bottom:17px}
.reassurance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.reassurance-card{padding:19px 20px;border:1px solid #c3ded4;border-radius:12px;background:#eaf5ef}
.reassurance-lavender{background:#f0ebf7;border-color:#d9cce5}
.reassurance-card h4{font-size:14px;line-height:1.7;color:var(--purple-dark);letter-spacing:0;margin-bottom:9px}
.reassurance-card p{font-size:13px;line-height:1.85;color:var(--muted)}
.practitioner-bottom{grid-template-rows:auto auto 1fr;align-items:start}
.session-contact{margin:0;border:1px solid #c8dcd3;border-radius:11px;background:#f9fcfa;overflow:hidden}
.practitioner-psy .session-contact{border-color:#d8cfe3;background:#faf8fc}
.session-contact>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:48px;padding:13px 15px;font-size:12px;line-height:1.7;color:#4a6461;font-weight:700}
.practitioner-psy .session-contact>summary{color:#6d526e}
.contact-toggle{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:400;flex-shrink:0}
.contact-toggle:after{content:"";display:block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.contact-open{display:none}
.session-contact[open] .contact-open{display:inline}
.session-contact[open] .contact-closed{display:none}
.session-contact[open] .contact-toggle:after{transform:rotate(225deg);margin-top:4px}
.session-contact-body{padding:1px 15px 17px;font-size:13px;line-height:1.85;color:var(--muted)}
.session-contact-body p+p{margin-top:9px}
.contact-phone{display:inline-block;margin:12px 0;padding:9px 11px;border-radius:8px;background:#e2f0e9;color:#345e58;font-size:13px;line-height:1.8;text-decoration:underline;text-underline-offset:3px}
.practitioner-psy .contact-phone{background:#eee5f2;color:#704d6a}
.session-contact-body>.contact-purpose{font-size:12px;line-height:1.8}
@media(max-width:580px){.profession-qualification{padding:17px 16px}.reassurance{padding:20px 17px}.reassurance>h3{font-size:21px}.reassurance-grid{grid-template-columns:1fr;gap:12px}.reassurance-card{padding:17px}.session-contact>summary{align-items:flex-start;flex-direction:column;gap:6px}.session-contact-body{padding-inline:15px}.contact-phone{font-size:12px;max-width:100%}}

/* Parcours simplifié : découverte, complémentarité, venue et partage. */
.hero{background:linear-gradient(125deg,#e8f4ef,#f0edf9 72%,#f8edf3);border-color:#d4cde3}
.hero h1 span{color:#624473}
.hero-copy>.hero-text{margin-top:21px;font-size:14px;max-width:none}
.hero-copy>.hero-intro{margin-top:16px}
.practitioner-main{align-content:start}
.practitioner-psy .service-purpose{color:#765369}
.practitioner-more{min-height:0}
.session-discoveries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:440px}
.discovery-card{display:flex;flex-direction:column;justify-content:space-between;gap:15px;min-width:0;min-height:160px;aspect-ratio:1;padding:18px;text-align:left;border:1px solid #c5d8e4;border-radius:17px;background:linear-gradient(140deg,#e3f0f8,#edf5fa);color:#405a72;transition:background .15s,border-color .15s,box-shadow .15s}
.discovery-profession{background:linear-gradient(140deg,#ede6f7,#f5effa);border-color:#d3c4e4;color:#624473}
.discovery-card:hover{border-color:#879fb8;box-shadow:0 4px 15px #58677d12;background:#deebf6}
.discovery-profession:hover{border-color:#ac8fca;background:#e9dff4}
.discovery-label{font-size:12px;line-height:1.6}
.discovery-card>strong{font-size:17px;line-height:1.5;max-width:180px;font-weight:700}
.discovery-action{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;line-height:1.6;width:100%;text-decoration:underline;text-underline-offset:4px}
.psy-more{grid-template-columns:minmax(130px,.85fr) minmax(0,1.15fr);gap:19px;align-items:start}
.celia-session-photo{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:19px;border:0;background:transparent}
.psy-more-copy>h4{font-size:15px;line-height:1.6;color:#765369;letter-spacing:0;margin-bottom:11px}
.psy-more-copy>p{font-size:13px;line-height:1.85;color:var(--muted)}
.psy-more-copy>p+p{margin-top:11px}
.session-followup{margin-top:-25px;margin-bottom:50px}
.session-followup .session-details{margin-top:0;gap:14px}
.reassurance{background:linear-gradient(120deg,#f7f4fc,#f8f4f7);border-color:#ddd0e6}
.prevention-quote{padding:18px 21px;margin:0 0 19px;border-left:3px solid #b9a3d1;border-radius:0 12px 12px 0;background:#eee5f7;color:#59406d}
.prevention-quote p{font-size:14px;line-height:1.65;font-weight:400}
.reassurance-mint{background:#eaf3f9;border-color:#cddce7}
.reassurance-lavender{background:#f7eaf0;border-color:#e5cfdc}
.venue-section{background:linear-gradient(120deg,#edf3fb,#f2edf9);border-color:#d8d4e8}
.visit-layout{grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.visit-address,.visit-resources{padding:25px;border:1px solid #d5d9e6;border-radius:17px;background:#fafbfe}
.visit-address{background:linear-gradient(130deg,#fafcfe,#eef5fa)}
.visit-content address{font-size:16px;line-height:1.9;color:var(--purple-dark)}
.visit-content address strong{display:block;margin-top:9px;font-size:19px;line-height:1.6;color:#4d5971}
.visit-resources>.other-resources{margin:0;padding:0;border:0}
.visit-resources>.membership-compact{margin-top:18px;padding-top:15px;border-color:#ddd5e9}
.house-gallery{margin-top:21px;background:#faf8fd;border-color:#d8d1e5}
.photo-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gallery-photo{display:block;min-width:0;background:#fafaff;border-color:#d9d8e6}
.gallery-photo img{display:block;height:160px;width:100%;object-fit:cover}
.gallery-photo>span{font-size:12px;padding:11px 12px}
.sharing-section{background:linear-gradient(130deg,#f5e5ee,#eee4f7 65%,#e9eefb);border-color:#dcc7e3;box-shadow:0 8px 34px #72548509}
.sharing-section>.section-heading>.eyebrow{color:#765369}
.sharing-invitation{background:linear-gradient(120deg,#eee0f6,#f9edf3);border-color:#d7bfe3}
.sharing-invitation h3{color:#624473}
.sharing-invitation p+p{color:#765369}
.sharing-invitation-action>.button{color:#513868;background:#dfceee;border-color:#c5acd9}
.sharing-invitation-action>.button:hover{background:#d6c0e8}
.sharing-invitation-action>.share-status{color:#624473}
.flyer-panel{background:#fcf9fe;border-color:#dccce7}
.feedback-panel{grid-column:auto;display:block;padding:27px;background:linear-gradient(130deg,#eef4fc,#faf5fc);border-color:#d0d8e9}
.feedback-panel>.button{margin-top:20px}
.feedback-panel>.small{margin-top:18px}
.sharing-section .app-sharing{border-color:#d7c8e2}
.app-link-label{font-size:13px;font-weight:700;color:var(--purple-dark);margin-bottom:8px}
.app-url{display:block;max-width:100%;overflow-wrap:anywhere;font-size:13px;line-height:1.8;color:#624473;text-decoration:underline;text-underline-offset:4px;margin-bottom:13px}
.profession-dialog{width:min(1020px,calc(100% - 32px));background:#f8f6fc}
.profession-dialog .shiatsu-profession{margin:0;padding:0;border:0;background:transparent}
.profession-dialog .profession-skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.profession-dialog .profession-skills>li{background:#fdfcfe;border-color:#ddd3e9;padding:17px}
.profession-dialog .skill-number{background:#e9e0f3;color:#624473}
.profession-dialog .profession-skills h4{color:#624473;font-size:14px}
.profession-dialog .profession-skills p{font-size:13px}
.profession-dialog .profession-qualification{background:#eef3fb;border-color:#d3dbe9}
.profession-qualification p+p{margin-top:12px}
@media(max-width:980px){.session-discoveries{max-width:440px}.psy-more{grid-template-columns:190px minmax(0,1fr)}.visit-layout{gap:18px}.visit-address,.visit-resources{padding:23px}}
@media(max-width:780px){.session-followup{margin-top:-18px;margin-bottom:42px}.visit-layout{grid-template-columns:1fr;gap:16px}.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-photo img{height:180px}}
@media(max-width:580px){.hero-copy>.hero-text{font-size:13px;margin-top:17px}.hero-copy>.hero-intro{font-size:14px;margin-top:15px}.discovery-card{padding:14px;min-height:156px;gap:11px;border-radius:14px}.discovery-card>strong{font-size:15px;line-height:1.55}.session-discoveries{gap:11px}.psy-more{grid-template-columns:1fr;gap:18px}.celia-session-photo{width:min(230px,100%)}.psy-more-copy>h4{font-size:16px}.psy-more-copy>p{font-size:13px}.session-followup{margin-top:-17px;margin-bottom:37px}.prevention-quote{padding:15px 16px;margin-bottom:17px}.prevention-quote p{font-size:14px}.visit-address,.visit-resources{padding:21px}.visit-content address{font-size:14px}.visit-content address strong{font-size:18px}.photo-gallery{gap:11px}.gallery-photo img{height:150px}.gallery-photo>span{font-size:12px;padding:11px}.feedback-panel{padding:23px 20px}.profession-dialog{width:calc(100% - 24px)}.profession-dialog .profession-skills{grid-template-columns:1fr;gap:10px}.profession-dialog .profession-skills>li{padding:15px}.profession-dialog .profession-skills h4{font-size:14px}.profession-dialog .profession-skills p{font-size:13px}.app-url{font-size:12px}}
@media(max-width:365px){.discovery-card{padding:12px;min-height:160px}.discovery-card>strong{font-size:14px}.session-discoveries{gap:9px}.discovery-label{font-size:12px}.gallery-photo img{height:125px}}

/* Quatre pastilles identiques ; les réservations ouvrent directement les agendas. */
body{padding-bottom:28px}
.page-tools{position:fixed;right:max(16px,calc((100vw - 1160px) / 2 - 90px));bottom:max(20px,env(safe-area-inset-bottom));z-index:46;width:76px;display:flex;flex-direction:column;gap:6px}
.booking-dock,.page-scroll-controls{display:flex;flex-direction:column;gap:6px}
.page-tools .page-pill{display:flex;align-items:center;justify-content:center;gap:5px;width:76px;height:44px;min-width:76px;min-height:44px;flex:0 0 44px;padding:4px 6px;border:1px solid #d7cbe2;border-radius:999px;background:#fff;color:#624473;font-family:"Segoe UI",ui-sans-serif,system-ui,sans-serif;font-size:12px;font-weight:600;line-height:14px;box-shadow:0 3px 12px #4834520c;text-align:center;transition:background .15s,border-color .15s}
.page-tools .booking-shortcut{flex-direction:column;gap:0}
.page-tools .booking-shortcut>span:first-child{font-weight:400}
.page-tools .booking-shortcut-geraldine{background:#ddf0e9;border-color:#b8d7cb;color:#315e5b}
.page-tools .booking-shortcut-celia{background:#f0e2f2;border-color:#d9c0dc;color:#704969}
.page-tools .page-pill:hover{background:#f0eaf7;border-color:#bda8cf}
.page-tools .booking-shortcut-geraldine:hover{background:#d0e8de;border-color:#9cc6b6}
.page-tools .booking-shortcut-celia:hover{background:#e9d5ec;border-color:#cba7ce}
.page-tools .page-pill:focus-visible{outline:3px solid rgba(39,155,173,.42);outline-offset:2px;border-radius:999px}
.page-scroll-controls svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.session-booking-line{padding:0 14px;border:1px solid #c7dfd4;border-radius:10px;background:#eef8f4}
.practitioner-psy .session-booking-line{border-color:#e0cee5;background:#f8f0f9}
.session-booking-link{display:flex;align-items:center;gap:8px;min-height:44px;width:max-content;max-width:100%;font-size:13px;line-height:1.6;color:#315e5b;text-decoration:underline;text-underline-offset:4px}
.practitioner-psy .session-booking-link{color:#704969}
.session-booking-link>svg{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.session-booking-link:hover{color:#483452}
@media(min-width:901px) and (max-width:1450px){body{padding-right:92px}.page-tools{right:max(32px,calc((100vw - 1252px) / 2))}}
@media(max-width:1240px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-book{margin-left:auto}}
@media(max-width:900px){body{padding-bottom:212px}.page-tools{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}}
@media(max-width:580px){.session-booking-line{padding-inline:12px}.session-booking-link{font-size:12px}}

/* Le numéro d’écoute SPS est accessible dans les menus et en pied de page. */
.desktop-nav>.menu-help,.mobile-menu>.menu-help{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border:1px solid #4e2f91;border-radius:10px;background:#4e2f91;color:#fff;white-space:nowrap}
.menu-help>span{font-size:12px;line-height:1.5}
.menu-help>strong{font-size:16px;line-height:1.5;letter-spacing:.015em;background:#fff;color:#4d8020;border-radius:4px;padding:3px 8px}
.desktop-nav>.menu-help:hover,.mobile-menu>.menu-help:hover{background:#43267d;color:#fff;text-decoration:none}
.mobile-menu>.menu-help{margin-top:10px;max-width:100%;width:max-content;min-height:60px}
.site-footer{flex-wrap:wrap}
.footer-emergency{flex-basis:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 76px 18px 21px;border:1px solid #4e2f91;border-radius:12px;background:#311c5f;color:#fff}
.site-footer .footer-help-title{font-size:15px;font-weight:700;color:#fff;margin:0}
.site-footer .footer-help-description{font-size:12px;line-height:1.8;color:#f1ebff;margin:5px 0 0}
.footer-emergency>a{display:inline-flex;align-items:center;gap:14px;min-height:48px;flex-shrink:0;padding:8px 12px;font-size:20px;font-weight:700;line-height:1.6;color:#4d8020;background:#fff;border-radius:4px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
@media(max-width:1150px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-book{margin-left:auto}}
@media(max-width:780px){.footer-emergency{align-items:flex-start;flex-direction:column;gap:10px;padding:18px 62px 18px 18px}.footer-emergency>a{font-size:18px;gap:10px}}

/* Le contenu défile dans la fenêtre ; sa croix reste accessible. */
dialog{padding:0;overflow:hidden}
dialog>.dialog-pane{max-height:calc(100dvh - 42px);overflow-y:auto;overscroll-behavior:contain;padding:30px}
dialog>.close-dialog{position:absolute;top:18px;right:18px;z-index:3;margin:0;box-shadow:0 3px 12px #48345220}
.dialog-pane>.dialog-heading{padding-right:58px}
@media(max-width:580px){dialog{padding:0}dialog>.dialog-pane{max-height:calc(100dvh - 26px);padding:22px 18px}dialog>.close-dialog{top:13px;right:13px}.dialog-pane>.dialog-heading{padding-right:52px}}

#ecoute-sps-entete>strong{color:#4d8020}

/* Installation et témoignages publiés après validation. */
.install-app-button{margin:10px 0 0 18px;vertical-align:middle}
#envoyer-temoignage{margin-bottom:15px}
#statut-envoi-temoignage:not(:empty){padding:12px 0}
.published-feedback{margin-top:24px}
.published-feedback>h3{font-size:21px;line-height:1.5;color:var(--purple-dark);margin-bottom:16px}
#liste-temoignages-publies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#liste-temoignages-publies>article{padding:21px;border:1px solid #d8cde4;border-radius:14px;background:#faf7fd}
#liste-temoignages-publies blockquote{font-size:14px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:14px}
#liste-temoignages-publies p{font-size:12px;line-height:1.8;color:var(--muted)}
@media(max-width:580px){.install-app-button{display:flex;margin:15px 0 0}#liste-temoignages-publies{grid-template-columns:1fr}}

/* Deux accès : la BD et le métier, avec leur visuel et un seul titre. */
.discovery-card{aspect-ratio:auto;min-height:0;padding:14px;gap:11px;justify-content:flex-start;background:#fff;border-color:#d6cfdf;box-shadow:0 4px 16px #48345208}
.discovery-profession{background:#fbf8fe;border-color:#d8c8e7}
.discovery-visual{display:block;width:100%;height:124px;border-radius:11px;overflow:hidden;background:#f0eaf8}
.discovery-visual-comic{background:#f6eef8}
.discovery-visual-profession{background:#fff}
.discovery-visual>img{width:100%;height:100%;object-fit:contain}
.discovery-visual>svg{width:100%;height:100%}
.discovery-card>strong{font-size:13px;line-height:1.5;max-width:none;color:#59406d}
.discovery-action{margin-top:auto}
.discovery-profession .discovery-action{color:#79516d}
@media(max-width:580px){.discovery-card{padding:11px;min-height:0;gap:10px}.discovery-visual{height:108px}.discovery-card>strong{font-size:12px}}

/* Mobile : le nom et les informations utilisent toute la largeur sous le portrait. */
@media(max-width:580px){
 .practitioner-main>.practitioner-art{grid-row:1/3}
 .practitioner-copy>h3,.practitioner-copy>.practitioner-role{grid-column:1/-1}
}

/* Les dates s’ouvrent au premier plan sans déplacer l’application. */
.mds-sessions-dialog{padding:0;width:min(840px,calc(100% - 32px));height:min(760px,calc(100dvh - 32px));max-width:none;max-height:none;border:1px solid #d8cde3;border-radius:20px;background:#fcfafd;overflow:hidden}
.mds-sessions-dialog::backdrop{background:#48345266}
.mds-sessions-dialog>iframe{display:block;width:100%;height:100%;border:0;background:#fcfafd}
.mds-sessions-dialog>.close-dialog{position:absolute;top:12px;right:12px;z-index:5;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:1px solid #d8cde3;border-radius:50%;background:#fff;color:#624473;font:400 28px/1 "Segoe UI",sans-serif;box-shadow:0 3px 12px #48345212}
@media(max-width:640px){
 .mds-sessions-dialog{inset:0;margin:0;width:100%;height:100dvh;border:0;border-radius:0}
}
