/* The existing ANICCA layout, refined without changing its five-area structure. */
:root{--blue-text:var(--blue)}
body{color:var(--blue);font-size:1.125rem}
.site-header{height:88px;background:var(--paper)}
.menu-toggle{display:flex;min-height:48px;font-size:.875rem;letter-spacing:.035em}
.menu-lines{width:28px;height:12px}
.hero{background:var(--paper);padding-top:88px;min-height:850px;min-height:max(800px,100svh)}
.hero-stage{min-height:640px}
.hero-copy{padding:90px 24px 110px;pointer-events:none}
.hero-copy h1{margin-bottom:34px}
.hero-tagline{color:var(--blue);margin:0;font-size:clamp(3rem,5.3vw,4.875rem)}
.hero-tagline em{color:var(--sand)}
.hero-wash{background:none}
.hero-bottom{justify-content:flex-end;min-height:85px}
.orbit-item{display:block;width:150px;text-align:center;border-radius:14px}
.orbit-float{gap:15px;align-items:center}
.orbit-item .orbit-medallion{display:block;width:100px;height:100px;border-radius:50%;background:var(--sand);overflow:hidden;box-shadow:none;transition:box-shadow .5s,scale .5s}
.orbit-item .brand-symbol{width:100%;height:100%;border-radius:50%}
.orbit-item .orbit-label{font-family:var(--sans);font-size:.875rem;line-height:1.5;letter-spacing:.015em;font-weight:500}
.orbit-item:hover .orbit-medallion,.orbit-item:focus-visible .orbit-medallion{box-shadow:none;scale:1.025}
.orbit-masszazs{top:9%;left:12%}
.orbit-termeszet{top:4%;right:13%}
.orbit-fodraszat{top:65%;left:8%}
.orbit-akademia{top:61%;right:8%}
.orbit-kozosseg{bottom:1%;left:calc(50% - 75px)}
.orbit-masszazs .orbit-float{animation:drift-a 9s -2s ease-in-out infinite}
.orbit-termeszet .orbit-float{animation:drift-b 10.5s -4s ease-in-out infinite}
.orbit-fodraszat .orbit-float{animation:drift-c 11s -6s ease-in-out infinite}
.orbit-akademia .orbit-float{animation:drift-a 12s -3s ease-in-out infinite reverse}
.orbit-kozosseg .orbit-float{animation:drift-b 10s -7s ease-in-out infinite reverse}
.orbit-item{animation-duration:1.2s;animation-delay:0s}
.hero.is-away .orbit-float{animation-play-state:paused}
@keyframes drift-a{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}36%{transform:translate3d(10px,-16px,0) rotate(1.4deg)}73%{transform:translate3d(-7px,5px,0) rotate(.4deg)}}
@keyframes drift-b{0%,100%{transform:translate3d(0,0,0) rotate(1deg)}43%{transform:translate3d(-9px,13px,0) rotate(-1.3deg)}78%{transform:translate3d(7px,-11px,0) rotate(.5deg)}}
@keyframes drift-c{0%,100%{transform:translate3d(0,0,0)}29%{transform:translate3d(-9px,-14px,0) rotate(1.5deg)}66%{transform:translate3d(8px,9px,0) rotate(-1.1deg)}}
.area-inner{min-height:730px;padding-block:125px}
.area-content{min-width:0}
.area h2{color:var(--blue)}
.area h2 em{color:var(--sand)}
.eyebrow,.chapter-index{color:var(--sand)}
.copy p{font-size:1.1875rem;line-height:1.85;font-weight:450;max-width:29em}
/* Follow the actual text width, including each wrapped line on mobile. */
.area-summary p{font-weight:500;text-decoration-line:underline;text-decoration-color:#b59e7d;text-decoration-thickness:3px;text-underline-offset:.3em;text-decoration-skip-ink:none}
.keyword{font-weight:600;background:none;padding-bottom:2px;transition:background-size 1s .2s ease}
.js-motion .copy:not(.is-visible) .keyword{background-size:0 1px}
.js-motion .copy.is-visible .keyword{background-size:100% 1px}
.actions{gap:14px 18px}
.button{font-size:.9375rem;min-height:52px;border-color:var(--blue);padding:14px 24px;font-weight:600}
.button.primary{background:var(--blue);color:var(--paper)}
.button.secondary{color:var(--blue);background:var(--paper)}
.button.community-programs-link{background:var(--sand);border-color:var(--sand);color:var(--paper)}
:where(.partner-category) .button[aria-label^="Partnereink"]{background:var(--paper);color:var(--blue)}
.button:hover{box-shadow:none}
.area-masszazs{background:var(--paper)}
.area-fodraszat{background:var(--paper)}
.area-termeszet{background:var(--paper)}
.area-akademia{background:var(--paper)}
.area-kozosseg{background:var(--paper)}
.symbol-surface{box-shadow:none}
.js-motion .reveal{opacity:.62;transform:translateY(14px);transition-duration:1.15s;transition-delay:calc(var(--reveal-step,0)*120ms)}
.js-motion .reveal.is-visible{opacity:1;transform:none}
.js-motion .area-visual.reveal{opacity:.4;transform:translateY(18px) scale(.98);transition-duration:1.35s;transition-delay:0s}
.js-motion .area-visual.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}
.js-motion .area-content .reveal{transition-duration:1.15s;transition-delay:calc(var(--reveal-step,0)*120ms)}
/* Only the eight section marks move; their halos, dimensions and content stay fixed. */
.partner-category .partner-pictogram .orbit-float{animation:none}
@media screen and (prefers-reduced-motion:no-preference){
 :is(#masszazs,#fodraszat,#termeszet,#akademia,#kozosseg,#partner-akademia,#partner-kozosseg,#partner-termeszet) .symbol-surface .brand-symbol{animation:pictogram-drift-a 14s -2s ease-in-out infinite}
 :is(#fodraszat,#kozosseg,#partner-kozosseg) .symbol-surface .brand-symbol{animation-name:pictogram-drift-b;animation-duration:16s;animation-delay:-6s}
 :is(#termeszet,#partner-termeszet) .symbol-surface .brand-symbol{animation-name:pictogram-drift-c;animation-duration:15s;animation-delay:-4s}
 :is(#akademia,#partner-akademia) .symbol-surface .brand-symbol{animation-duration:17s;animation-delay:-8s;animation-direction:reverse}
}
/* The existing drift rhythm at a smaller amplitude; translate preserves logo rotation. */
@keyframes pictogram-drift-a{0%,100%{translate:0 0}36%{translate:3px -5px}73%{translate:-2px 1.5px}}
@keyframes pictogram-drift-b{0%,100%{translate:0 0}43%{translate:-3px 4px}78%{translate:2px -3px}}
@keyframes pictogram-drift-c{0%,100%{translate:0 0}29%{translate:-3px -4px}66%{translate:2px 3px}}
.closing{padding-top:55px;padding-bottom:70px}
.closing h2{color:var(--blue)}
.closing h2 em{color:var(--sand)}
.closing-line{margin-bottom:45px}
.closing-icons{margin-bottom:0}
dialog{color:var(--blue);border-color:var(--blue)}
.detail-dialog{max-width:680px}
.detail-intro{font-size:1.0625rem;line-height:1.85}
.detail-intro p{margin:0 0 24px}
.detail-intro .donation-note{font-size:.9375rem;padding:18px 0;border-block:1px solid var(--sand)}
.detail-dialog h2{color:var(--blue)}
.small-copy,.placeholder p{font-size:1.0625rem}
.menu-dialog{width:min(460px,100%);padding:33px 32px 35px}
.menu-dialog nav{gap:0}
.menu-dialog .nav-link{font-size:1.375rem;min-height:76px;border-bottom-color:var(--blue)}
.menu-dialog .nav-link[aria-current]{text-decoration:underline;text-decoration-color:var(--sand);text-decoration-thickness:1px;text-underline-offset:7px}
.menu-dialog .nav-contact .contact-icon{width:44px;height:44px;padding:7px}
.menu-signoff{margin-top:32px;color:var(--sand)}
.contact{position:relative;isolation:isolate;scroll-margin-top:0;background:var(--blue);color:var(--paper);padding:230px 45px 52px}
.contact-inner{max-width:1080px;margin:0 auto}
.contact-heading{margin-bottom:58px}
.contact .eyebrow{color:var(--paper);margin-bottom:14px;font-size:.875rem}
.contact h2{font:400 clamp(3rem,5vw,4rem)/1.12 var(--serif);letter-spacing:-.045em;margin:0}
.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px}
.contact-location,.contact-direct{min-width:0}
.contact-label{font-size:.875rem;font-weight:500;letter-spacing:.07em;margin:0 0 22px}
.address-link{font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.65rem);line-height:1.14;letter-spacing:-.025em;display:block;width:fit-content;max-width:100%;padding-bottom:12px}
.address-link span{display:block}
.address-link .address-city{font-family:var(--sans);font-size:1.125rem;letter-spacing:0;line-height:1.5;margin-bottom:13px}
.map-link{display:inline-flex;align-items:center;gap:12px;font-size:.9375rem;min-height:48px;margin-top:17px;max-width:100%}
.map-link .arrow{width:18px}
.contact-icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linejoin:round;stroke-linecap:round;flex-shrink:0}
.direct-link{display:flex;align-items:center;gap:13px;padding-block:10px;font-size:1.0625rem;line-height:1.6;min-height:48px}
.direct-link span{overflow-wrap:anywhere}
.social-links{display:flex;gap:15px;justify-content:space-between;max-width:345px;margin-top:38px}
.social-link{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:56px;min-height:70px;font-size:.875rem}
.social-icon-wrap{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--paper);border-radius:50%;transition:transform .45s,background .45s}
.social-link:hover .social-icon-wrap{transform:translateY(-3px);background:var(--paper)}
.social-svg{width:22px;height:22px;fill:currentColor;display:block}
.contact-review{margin-top:62px}
.contact .button{border-color:var(--paper);color:var(--paper);background:transparent;max-width:100%;text-align:center}
.review-button{gap:14px;padding:17px 25px}
.contact .button:hover{background:var(--paper);color:var(--blue);box-shadow:none}
.contact a:focus-visible{outline-color:var(--paper)}
.contact-bottom{margin-top:60px;padding-top:35px;border-top:1px solid var(--paper);display:flex;justify-content:center}
.contact .linktree-button{border:0;font-weight:450;font-size:.9375rem;padding:12px 10px;gap:16px;border-radius:0}
.contact .linktree-button:hover{background:transparent;color:var(--paper);text-decoration:underline;text-underline-offset:6px}
.contact .linktree-button .arrow{width:18px}

.area-akademia .actions{align-items:flex-start;flex-direction:column}
.area-akademia .actions .button{max-width:100%;text-align:left;line-height:1.5}
.area-akademia .actions .button span{min-width:0;overflow-wrap:break-word}
.contact .reveal{opacity:1;transition-property:transform}
.contact .contact-label,.contact .map-link,.contact .direct-link,.contact .social-link,.contact .linktree-button{font-weight:600}
.contact .social-icon-wrap{border-color:var(--paper)}
.contact .contact-icon{stroke-width:1.65}

/* A dedicated header slot keeps the sound control clear of page content. */
.header-controls{display:flex;align-items:center;gap:22px;flex-shrink:0}
.sound-control{position:static;flex-shrink:0;display:grid;place-items:center;width:46px;height:46px;min-height:46px;padding:0;border:1px solid var(--blue);border-radius:50%;background:var(--paper);color:var(--blue);box-shadow:none}
.sound-control .speaker{width:20px;height:20px}
.sound-control .sound-on{display:none}
.sound-control[data-state="on"] .sound-on{display:block}
.sound-control[data-state="on"] .sound-off{display:none}
.sound-control:disabled{opacity:.75}

.copy,.detail-intro,.small-copy,.program-list{color:var(--blue-text)}
.button[href="https://anicca.salonic.hu/"]{background:var(--sand);border-color:var(--sand);color:var(--paper)}
.button[href="https://anicca.salonic.hu/"]:hover{box-shadow:none}
.massage-description p{margin-bottom:25px;max-width:34em}
.massage-description h3,.academy-programs h3{font:500 1.35rem/1.4 var(--serif);margin:34px 0 18px;color:var(--blue-text)}
.program-list{list-style:none;padding:0;margin:0;line-height:1.8;font-size:1.0625rem}
.program-list li{padding:24px 0;border-block:1px solid var(--sand)}
.program-list h4,.community-programs .program-list h3{font:400 1.65rem/1.3 var(--serif);margin:0 0 14px}
.program-list p{margin:0 0 22px}
.academy-programs .button,.community-programs .button{max-width:100%;white-space:normal;text-align:center}
.academy-programs .program-new-foundations{color:var(--blue)}
/* Academy only: separate program cards, following the education package rhythm. */
.detail-dialog[data-area-detail] .academy-programs .program-list{display:grid;gap:28px}
.detail-dialog[data-area-detail] .academy-programs .academy-program-card{min-width:0;padding:30px 28px;background:#f0f0f0;color:#94b0cf;border:1px solid #b59e7d;border-top-width:3px;border-radius:4px}
.detail-dialog[data-area-detail] .academy-programs .academy-program-heading{display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;align-items:center;margin-bottom:24px}
.detail-dialog[data-area-detail] .academy-programs .academy-program-number{font:400 64px/.95 var(--serif);letter-spacing:-.07em;color:#b59e7d}
.detail-dialog[data-area-detail] .academy-programs .academy-program-card h4{font:400 32px/1.15 var(--serif);letter-spacing:-.035em;color:#94b0cf;margin:0}
.detail-dialog[data-area-detail] .academy-programs .academy-program-card p{color:#94b0cf;margin:0 0 24px}
.detail-dialog[data-area-detail] .academy-programs .academy-program-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.detail-dialog[data-area-detail] .academy-programs .academy-program-actions .button.primary{background:#94b0cf;color:#f0f0f0;border-color:#94b0cf}
.detail-dialog[data-area-detail] .academy-programs .academy-interview{background:#f0f0f0;color:#94b0cf;border-color:#b59e7d}
.detail-dialog[data-area-detail] .academy-programs .academy-program-actions .button:focus-visible{outline:2px solid #b59e7d;outline-offset:4px}
@media(max-width:640px){
 .detail-dialog[data-area-detail] .academy-programs .program-list{gap:24px}
 .detail-dialog[data-area-detail] .academy-programs .academy-program-card{padding:26px 20px}
 .detail-dialog[data-area-detail] .academy-programs .academy-program-heading{grid-template-columns:48px minmax(0,1fr);gap:16px;margin-bottom:20px}
 .detail-dialog[data-area-detail] .academy-programs .academy-program-number{font-size:52px}
 .detail-dialog[data-area-detail] .academy-programs .academy-program-card h4{font-size:28px}
}
.community-programs .program-list{color:var(--blue)}
.community-programs .button span{min-width:0;overflow-wrap:anywhere}
/* The hair education view reuses the existing detail typography and program list. */
.hair-education .education-topics{padding-left:1.2em;margin:0 0 24px}
.hair-education .education-topics li{margin-bottom:12px}
.hair-education .education-purpose{border-block:1px solid var(--sand);padding-block:20px}
.hair-education{overflow-wrap:break-word}

@media(min-width:1600px){.hero-stage{max-width:1420px}.hero-tagline{font-size:5.125rem}}
@media(max-width:1100px){.orbit-masszazs{left:7%}.orbit-termeszet{right:8%}.orbit-fodraszat{left:5%}.orbit-akademia{right:5%}.hero-copy{max-width:560px}.orbit-item .orbit-medallion{width:88px;height:88px}.contact-grid{gap:40px}}
@media(max-width:900px){.hero-copy{padding-top:120px;padding-bottom:150px}.hero-tagline{font-size:3.6rem}.orbit-masszazs{top:3%;left:13%}.orbit-termeszet{top:0;right:14%}.orbit-fodraszat{top:64%;left:8%}.orbit-akademia{top:63%;right:7%}.area-inner{min-height:690px;padding-block:110px}.copy p{font-size:1.125rem}.contact{padding-inline:32px}.contact-grid{grid-template-columns:1fr 1fr;gap:35px}.direct-link{font-size:1rem}.social-links{gap:10px}.social-link{font-size:.8125rem;min-width:50px}}
@media(max-width:780px){
 .site-header{height:76px;padding-inline:24px}.hero{padding-top:76px;min-height:max(820px,100svh)}
 .hero-stage{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:auto auto auto;gap:30px 8px;align-items:center;align-content:center;min-height:650px;padding:28px 22px 25px;max-width:660px}
 .hero-copy{grid-column:1/-1;grid-row:2;max-width:100%;width:100%;padding:10px 0 5px;justify-self:center}
 .hero-copy h1{margin-bottom:28px}.hero-wordmark{width:clamp(210px,62vw,300px)}.hero-tagline{font-size:clamp(2.6rem,11.8vw,3.55rem);margin:0;line-height:1.13}
 .orbit-item{position:static;width:100%;max-width:150px;justify-self:center;align-self:start}
 .orbit-masszazs{grid-column:2/4;grid-row:1;margin-top:19px}.orbit-termeszet{grid-column:4/6;grid-row:1;margin-top:0}
 .orbit-fodraszat{grid-column:1/3;grid-row:3;margin-top:0}.orbit-kozosseg{grid-column:3/5;grid-row:3;margin-top:32px}.orbit-akademia{grid-column:5/7;grid-row:3;margin-top:7px}
 .orbit-item .orbit-medallion{width:78px;height:78px;box-shadow:none}.orbit-item .brand-symbol{width:100%;height:100%}
 .orbit-item .orbit-label{font-size:.8125rem;line-height:1.45;max-width:130px}.orbit-float{gap:13px}
 .hero-bottom{padding:18px 24px 25px;min-height:75px}.hero-wash{width:100%;height:100%;inset:0}
 .contact-grid{grid-template-columns:1fr;gap:48px}.contact-direct{max-width:480px}.contact-review{margin-top:46px}.contact-heading{margin-bottom:44px}.social-links{max-width:350px;justify-content:space-between}.social-link{font-size:.875rem}
}
@media(max-width:640px){
 .hero-stage{min-height:625px;padding-inline:20px;row-gap:29px}.hero-copy{padding-block:12px}.hero-wordmark{width:230px}.hero-tagline{font-size:clamp(2.55rem,11.8vw,3.2rem)}
 .hero-copy h1{margin-bottom:24px}.orbit-item .orbit-medallion{width:72px;height:72px}.hero-bottom .sound-control{font-size:.8125rem}
 .area-inner,.area-fodraszat .area-inner,.area-akademia .area-inner{min-height:0;padding:92px 27px 96px;gap:42px}.area h2{font-size:3.05rem}
 .symbol-halo{width:200px;height:200px}.symbol-surface,.area-fodraszat .symbol-surface{width:160px;height:160px}.symbol-surface .brand-symbol{width:97px;height:97px}
 .area-termeszet .symbol-surface .brand-symbol{width:75px;height:115px}.area-kozosseg .symbol-surface .brand-symbol{width:114px;height:80px}
 .copy p{font-size:1.125rem;line-height:1.85}.area-content{max-width:440px}.button{font-size:.9375rem;padding:14px 21px;min-height:52px}
 .closing{padding:45px 24px 45px}.closing h2{font-size:2.05rem}.closing-icons{gap:10px}
 .contact{padding:175px 26px 35px;background:var(--blue)}.contact h2{font-size:3rem}.contact-heading{margin-bottom:40px}
 .contact .contact-label{font-size:.875rem;margin-bottom:20px}.address-link{font-size:3rem}.address-link .address-city{font-size:1.0625rem}
 .map-link{font-size:.9375rem;gap:9px}.direct-link{font-size:1rem;gap:12px}.social-links{margin-top:32px;gap:10px}.social-link{font-size:.8125rem}
 .contact-review{margin-top:40px}.review-button{font-size:.875rem;gap:11px;width:100%;padding:16px 18px}.review-button .arrow{display:none}
 .contact-bottom{margin-top:44px;padding-top:27px}.contact .linktree-button{font-size:.875rem;line-height:1.6;gap:10px;padding-inline:0}
 .menu-dialog{padding:28px 26px max(28px,env(safe-area-inset-bottom))}.menu-heading{margin-bottom:34px}.menu-dialog .nav-link{min-height:72px;font-size:1.3rem}.menu-signoff{font-size:.8125rem;margin-top:28px}
 .detail-dialog .actions{flex-direction:column;align-items:stretch}.detail-dialog .button{width:100%}
}
@media(max-width:359px){.site-header{gap:12px}.header-controls{gap:12px}.hero-stage{padding-inline:16px;column-gap:6px}.orbit-item .orbit-medallion{width:64px;height:64px}.orbit-item .orbit-label{font-size:.75rem}.hero-wordmark{width:208px}.hero-tagline{font-size:2.55rem}.area-inner{padding-inline:22px}.area h2{font-size:2.8rem}.actions{gap:11px}.actions .button{padding-inline:17px;font-size:.875rem}.contact{padding-inline:22px}.address-link{font-size:2.75rem}.social-icon-wrap{width:46px;height:46px}.contact .linktree-button{font-size:.8125rem}.contact .linktree-button .arrow{width:15px}}
@media(prefers-reduced-motion:reduce){.orbit-float,.orbit-item,.hero-copy{animation:none!important}.js-motion .reveal,.js-motion .area-visual.reveal{opacity:1;transform:none}.keyword{background-size:100% 1px!important}*,*:before,*:after{transition:none!important}}
/* Only the five existing service detail views use this palette. */
.detail-dialog[data-area-detail]{background:#94b0cf;color:#f0f0f0}
.detail-dialog[data-area-detail] :is(h2,h3,h4,.eyebrow,.detail-intro,.secondary-copy,.donation-note,.topic-list,.program-list,.program-new-foundations,.close-button){color:#f0f0f0}
.detail-dialog[data-area-detail] .detail-symbol feFlood{flood-color:#f0f0f0}
.detail-dialog[data-area-detail] .button.primary:not([href="https://anicca.salonic.hu/"]):not(.community-programs-link){border-color:#f0f0f0}
.detail-dialog[data-area-detail] :is(a,button):focus-visible{outline-color:#f0f0f0}

@media(prefers-contrast:more){.detail-intro,.small-copy,.program-list,.massage-description h3,.academy-programs h3{color:CanvasText}.button[href="https://anicca.salonic.hu/"]{background:CanvasText;color:Canvas;border-color:CanvasText}body,dialog,.hero-tagline,.hero-tagline em,.area h2,.area h2 em,.copy,.closing h2,.closing h2 em,.detail-dialog h2,.eyebrow,.chapter-index{color:CanvasText}.button.primary{background:CanvasText;color:Canvas}.button.secondary{color:CanvasText;border-color:CanvasText}.contact{background:Canvas;color:CanvasText}.contact .eyebrow,.contact .button,.contact .linktree-button:hover{color:CanvasText}.contact .button,.social-icon-wrap{border-color:CanvasText}.contact a:focus-visible{outline-color:CanvasText}.contact-bottom{border-color:CanvasText}.contact .button:hover{background:CanvasText;color:Canvas}}
@media(forced-colors:active){.orbit-medallion{forced-color-adjust:none}.contact{background:Canvas;color:CanvasText}.contact .button{border-color:ButtonText;color:ButtonText}.keyword{background:none;text-decoration:underline}.social-icon-wrap{border-color:ButtonText}}
@media print{.sound-control{display:none}.contact{background:none;color:CanvasText;padding:30px 20px}.contact .eyebrow{color:CanvasText}.contact-heading{margin-bottom:20px}.contact-grid{gap:25px}.hero-stage{min-height:500px}.contact-bottom{margin-top:20px}.orbit-float{animation:none}}

/* The introduction is reachable from the existing menu and unchanged wordmark. */
.hero-about-link{display:block;pointer-events:auto;background:none;border:0;text-decoration:none}
@media screen and (prefers-reduced-motion:no-preference){
 .hero-about-link .hero-wordmark{animation:wordmark-breathe 5.5s ease-in-out infinite;transform-origin:center}
 .hero.is-away .hero-about-link .hero-wordmark{animation-play-state:paused}
}
@keyframes wordmark-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.012)}}

/* Education only: editorial rhythm inside the existing detail dialog. */
.detail-dialog[data-education-detail]{width:min(1040px,calc(100% - 32px));max-width:1040px;padding:76px 48px 36px;scroll-padding-top:24px}
.detail-dialog[data-education-detail] .hair-education{color:#f0f0f0;font-size:17px;line-height:1.85;overflow-wrap:break-word}
.detail-dialog[data-education-detail] .hair-education p{margin:0 0 22px}
.detail-dialog[data-education-detail] .hair-education .eyebrow{font:600 12px/1.6 var(--sans);letter-spacing:.17em;color:inherit;margin-bottom:22px}
.detail-dialog[data-education-detail] .hair-education :is(h2,h3,h4){color:inherit;font-family:var(--serif);font-weight:400;letter-spacing:-.035em}
.detail-dialog[data-education-detail] .hair-education h2{font-size:clamp(36px,5.2vw,56px);line-height:1.12;margin:0 0 34px}
.detail-dialog[data-education-detail] .hair-education h3{font-size:clamp(32px,4.3vw,48px);line-height:1.15;margin:0 0 32px}
.detail-dialog[data-education-detail] .hair-education h4{font-size:34px;line-height:1.15;margin:0 0 20px}
.detail-dialog[data-education-detail] .hair-education :is(h2 span,h3 span){text-decoration:underline;text-decoration-color:#b59e7d;text-decoration-thickness:3px;text-underline-offset:.16em;text-decoration-skip-ink:none}
.detail-dialog[data-education-detail] .education-opening{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:38px;align-items:center;padding-bottom:20px}
.detail-dialog[data-education-detail] .education-opening-mark .brand-symbol{width:140px;height:155px}
.detail-dialog[data-education-detail] .hair-education .education-lead{font:400 clamp(23px,2.7vw,29px)/1.5 var(--serif);max-width:25em;letter-spacing:-.02em}
.detail-dialog[data-education-detail] .education-divider{display:flex;align-items:center;justify-content:center;gap:23px;margin:48px 0 58px}
.detail-dialog[data-education-detail] .education-divider span{height:1px;background:#b59e7d;flex:1}
.detail-dialog[data-education-detail] .education-divider .brand-symbol{width:40px;height:45px}
.detail-dialog[data-education-detail] .education-reading{max-width:42em}
.detail-dialog[data-education-detail] .hair-education .education-purpose{font:400 clamp(28px,3.3vw,40px)/1.4 var(--serif);letter-spacing:-.025em;border:0;border-left:4px solid #b59e7d;margin:40px 0;padding:10px 0 10px 28px;max-width:24em}
.detail-dialog[data-education-detail] .education-purpose strong{font-weight:400}
.detail-dialog[data-education-detail] .education-qualification{margin:0 0 48px;font-size:15px}
.detail-dialog[data-education-detail] .education-topics{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;list-style:none;margin:0 0 30px;padding:0}
.detail-dialog[data-education-detail] .education-topics li{margin:0;padding:18px 0 0;border-top:2px solid #b59e7d}
.detail-dialog[data-education-detail] .education-values{font-size:15px;max-width:42em}
.detail-dialog[data-education-detail] .education-options>h3{margin-bottom:48px}
.detail-dialog[data-education-detail] .education-package{margin:0 0 38px;padding:36px;border-radius:4px}
.detail-dialog[data-education-detail] .education-package-heading{display:grid;grid-template-columns:100px minmax(0,1fr);gap:24px;align-items:start;margin-bottom:32px}
.detail-dialog[data-education-detail] .education-number{font:400 88px/.95 var(--serif);letter-spacing:-.07em;color:#b59e7d}
.detail-dialog[data-education-detail] .hair-education .education-keyline{font:400 23px/1.5 var(--serif);letter-spacing:-.015em;margin:0}
.detail-dialog[data-education-detail] .education-price-row{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:0 0 32px}
.detail-dialog[data-education-detail] .hair-education .education-price{margin:0;line-height:1.1;max-width:100%}
.detail-dialog[data-education-detail] .education-price strong{font:400 clamp(42px,6vw,64px)/1.1 var(--serif);letter-spacing:-.045em;white-space:nowrap;display:block}
.detail-dialog[data-education-detail] .education-price>span{display:block;font-size:15px;margin-top:8px}
.detail-dialog[data-education-detail] .hair-education .education-frequency{display:flex;align-items:center;gap:14px;margin:0;font-size:14px;line-height:1.6}
.detail-dialog[data-education-detail] .education-frequency strong{font:400 64px/1 var(--serif);color:#b59e7d}
.detail-dialog[data-education-detail] .education-package-copy{max-width:44em}
.detail-dialog[data-education-detail] .education-terms{font-size:14px;line-height:1.8;border-top:1px solid #b59e7d;margin:28px 0;padding-top:18px}
.detail-dialog[data-education-detail] .education-terms p:last-child{margin-bottom:0}
.detail-dialog[data-education-detail] .education-single{background:#f0f0f0;color:#94b0cf}
.detail-dialog[data-education-detail] .education-monthly{background:#94b0cf;color:#f0f0f0;border-block:3px solid #b59e7d;border-radius:0;padding-block:44px}
.detail-dialog[data-education-detail] .education-monthly .education-frequency{background:#f0f0f0;color:#94b0cf;padding:16px 22px;border-radius:4px}
.detail-dialog[data-education-detail] .education-private{padding:0;background:#f0f0f0;color:#94b0cf;overflow:hidden}
.detail-dialog[data-education-detail] .education-private-top{padding:44px 36px;background:#b59e7d;color:#f0f0f0}
.detail-dialog[data-education-detail] .education-private .education-number{font-size:102px;color:#f0f0f0}
.detail-dialog[data-education-detail] .education-private h4{font-size:46px}
.detail-dialog[data-education-detail] .education-private .education-package-heading{margin-bottom:32px}
.detail-dialog[data-education-detail] .education-private .education-frequency strong{color:#f0f0f0}
.detail-dialog[data-education-detail] .education-private .education-keyline{margin-bottom:32px}
.detail-dialog[data-education-detail] .education-private .education-price-row{margin:0}
.detail-dialog[data-education-detail] .education-private .education-package-copy{padding:36px;max-width:none}
.detail-dialog[data-education-detail] .hair-education .button{max-width:100%;white-space:normal;text-align:center}
.detail-dialog[data-education-detail] .hair-education .button.primary{background:#b59e7d;border-color:#b59e7d;color:#f0f0f0}
.detail-dialog[data-education-detail] .hair-education .button.secondary{background:#f0f0f0;border-color:#f0f0f0;color:#94b0cf}
.detail-dialog[data-education-detail] .education-rhythm{max-width:42em;margin:54px 0 0}
.detail-dialog[data-education-detail] .education-rhythm h3{font-size:28px;margin-bottom:18px}
.detail-dialog[data-education-detail] .education-contact{padding:8px 0 28px}
.detail-dialog[data-education-detail] .education-contact h4{font-size:23px;margin-top:36px}
.detail-dialog[data-education-detail] .education-contact>p{max-width:38em}
.detail-dialog[data-education-detail] .education-return{padding-top:25px;border-top:1px solid #b59e7d}
@media(max-width:700px){
 .detail-dialog[data-education-detail]{width:calc(100% - 20px);padding:62px 22px 26px}
 .detail-dialog[data-education-detail] .hair-education{font-size:16px;line-height:1.85}
 .detail-dialog[data-education-detail] .education-opening{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:26px;padding-bottom:0}
 .detail-dialog[data-education-detail] .education-opening-mark .brand-symbol{width:72px;height:78px}
 .detail-dialog[data-education-detail] .hair-education h2{font-size:36px}
 .detail-dialog[data-education-detail] .hair-education h3{font-size:34px}
 .detail-dialog[data-education-detail] .education-divider{margin:36px 0 42px;gap:18px}
 .detail-dialog[data-education-detail] .education-topics{grid-template-columns:1fr;gap:16px}
 .detail-dialog[data-education-detail] .hair-education .education-purpose{font-size:28px;padding-left:18px;margin-block:34px}
 .detail-dialog[data-education-detail] .education-package{padding:26px 20px;margin-bottom:26px}
 .detail-dialog[data-education-detail] .education-package-heading{grid-template-columns:1fr;gap:20px;margin-bottom:26px}
 .detail-dialog[data-education-detail] .education-number{font-size:72px}
 .detail-dialog[data-education-detail] .education-package h4{font-size:32px}
 .detail-dialog[data-education-detail] .education-price-row{gap:24px;align-items:flex-start;flex-direction:column}
 .detail-dialog[data-education-detail] .education-price strong{font-size:48px}
 .detail-dialog[data-education-detail] .education-frequency strong{font-size:54px}
 .detail-dialog[data-education-detail] .education-monthly{padding-inline:0;padding-block:34px}
 .detail-dialog[data-education-detail] .education-monthly .education-frequency{width:100%}
 .detail-dialog[data-education-detail] .education-private{padding:0}
 .detail-dialog[data-education-detail] .education-private-top{padding:32px 20px}
 .detail-dialog[data-education-detail] .education-private .education-number{font-size:90px}
 .detail-dialog[data-education-detail] .education-private h4{font-size:42px}
 .detail-dialog[data-education-detail] .education-private .education-package-copy{padding:26px 20px}
 .detail-dialog[data-education-detail] .education-rhythm h3{font-size:27px}
 .detail-dialog[data-education-detail] .hair-education .actions{flex-direction:column;align-items:stretch}
 .detail-dialog[data-education-detail] .hair-education .button{width:100%;gap:12px;padding-inline:18px}
}
@media(max-width:359px){
 .detail-dialog[data-education-detail]{padding-inline:18px}
 .detail-dialog[data-education-detail] .hair-education h2{font-size:32px}
 .detail-dialog[data-education-detail] .education-price strong{font-size:42px}
 .detail-dialog[data-education-detail] .education-package h4{font-size:30px}
}
