/* Wellmate visual system. Presentation only: no content, state or routing changes. */
:root{
 --ink:#203e35;--green:#285748;--lime:#dce8c8;--paper:#f7f8f4;
 --line:#dce3dc;--muted:#5e7067;--surface:#fff;--soft:#edf2e9;
 --shadow:0 8px 32px rgba(31,62,49,.045);--radius:18px;
}
body{font-family:'DM Sans',system-ui,sans-serif;font-size:15px;line-height:1.55;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
::selection{background:#dce8c8;color:#203e35}
h1,h2,h3,h4{font-family:Manrope,'DM Sans',system-ui,sans-serif;color:var(--ink);overflow-wrap:break-word}
h1{font-weight:600;letter-spacing:-.055em;line-height:1.12}
h2{font-size:29px;font-weight:600;letter-spacing:-.04em;line-height:1.3}
h3{font-size:18px;font-weight:700;letter-spacing:-.025em;line-height:1.4}
p{line-height:1.8;color:var(--muted)}
a,button,input,select,textarea{transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7e9b72;outline-offset:3px}
button:disabled{cursor:not-allowed;opacity:.55}
body>header{min-height:90px;height:auto;padding:23px max(28px,calc((100vw - 1240px)/2));gap:24px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}
body>header>.logo{flex-shrink:0}
body>header>nav{gap:18px;flex-wrap:wrap}
body>header>nav a{font-weight:500;font-size:12px;white-space:nowrap}
body>header>nav a:not(.btn):hover{color:#527a59;text-decoration:underline;text-underline-offset:5px}
.btn{border-radius:9px;background:var(--green);color:#fff;padding:14px 22px;font-weight:600;font-size:14px;line-height:1.4;min-height:46px;box-shadow:0 2px 3px #173d2510;text-align:center;white-space:normal}
.btn:hover{filter:none;background:#1e4438;box-shadow:0 4px 12px #193d2920}
.btn.outline{background:transparent;color:var(--green);border:1px solid #c6d3c8;box-shadow:none}
.btn.outline:hover{background:#edf2e9;border-color:#9eB39e}
.btn.light{background:var(--soft);color:var(--ink)}
.btn.small{min-height:40px;padding:10px 16px;font-size:12px}
.btn.danger{background:#963e31;color:white}
.btn.danger:hover{background:#7e3026}
.text-link{text-decoration-thickness:1px;text-underline-offset:4px;font-weight:500}
.demo{padding:10px max(28px,calc((100vw - 1240px)/2));background:#eef2eb;border-bottom:1px solid #e3e9df;gap:16px;color:#566b5c;font-size:11px;line-height:1.6}
.demo a{white-space:nowrap;text-underline-offset:3px}
.wrap{max-width:1280px;padding-left:40px;padding-right:40px}
.page{max-width:1200px;padding:56px 40px 90px}
.page-title{font-size:clamp(32px,4vw,49px);letter-spacing:-.05em;line-height:1.16;margin:20px 0}
.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#62785b;line-height:1.6}
.eyebrow:before{width:6px;height:6px;background:#7d9865;flex-shrink:0}
.hero{grid-template-columns:1.12fr 1fr;gap:64px;padding-top:70px;padding-bottom:58px;min-height:560px}
.hero h1{font-size:clamp(40px,4.5vw,64px);font-weight:600;line-height:1.13;letter-spacing:-.055em;margin:25px 0}
.hero h1 em{color:#688359}
.hero p{font-size:16px;max-width:470px;line-height:1.85}
.hero>div:first-child>div[style]{flex-wrap:wrap}
.hero .hint{font-size:11px;letter-spacing:.1px;color:#64756a;line-height:1.8}
/* Architectural curves use the existing decorative illustration elements. */
.hero-art{height:410px;border-radius:22px;background:#244d3e;box-shadow:inset 0 0 0 1px #ffffff12;isolation:isolate;overflow:hidden}
.hero-art:before{content:'';position:absolute;inset:20px;border:1px solid #d9e8cd26;border-radius:14px;pointer-events:none;z-index:1}
.hero-art:after{content:'';position:absolute;top:-70px;right:-110px;width:320px;height:320px;border:1px solid #d6e5ca38;border-radius:50%;box-shadow:0 0 0 38px #d6e5ca0b,0 0 0 76px #d6e5ca07;pointer-events:none}
.hero-art .orb{position:absolute;left:45px;top:55px;width:185px;height:185px;background:#b8c99e;border-radius:50%;box-shadow:0 0 0 25px #a9bd8b20,0 0 0 50px #a9bd8b10}
.hero-art .path{left:55px;bottom:-145px;width:180px;height:365px;background:#78976e;transform:rotate(-31deg);border-radius:100px 100px 0 0;border:1px solid #bdd2ac3b}
.hero-art .path.b{left:240px;bottom:-155px;height:425px;background:#b9cb9d;transform:rotate(30deg)}
.hero-art .float{z-index:2;border:1px solid #e5ebdf;border-radius:12px;padding:19px 22px;box-shadow:0 10px 24px #0b28161c;background:#fcfdf8;max-width:calc(100% - 50px);font-size:13px;line-height:1.5}
.hero-art .float.top{top:45px;right:25px;background:#f9fbf1}
.hero-art .float.bottom{bottom:28px;left:25px;right:25px}
.hero-art .float strong{font-family:Manrope,sans-serif;font-weight:600;margin-bottom:5px;color:#294e3d}
.hero-art .float span{font-size:11px;color:#62735e}
.searchbar{border-radius:12px;padding:12px;border:1px solid #d2ded3;box-shadow:0 10px 34px #243d3010;gap:12px;background:#fff;align-items:center}
.searchbar input,.searchbar select{padding:16px;font-size:14px;min-height:49px}
.searchbar select{border-left:1px solid var(--line);border-radius:0}
.searchbar .btn{min-height:49px;flex-shrink:0}
.section{padding-top:58px;padding-bottom:65px}
.section-head{gap:24px;margin-bottom:26px}
.section-head h2{font-size:31px;margin:10px 0 0}
.section-head>a{color:var(--green);font-size:12px;font-weight:600;white-space:nowrap}
.chips{gap:9px;margin:24px 0 29px}
.chip{font-size:13px;line-height:1.5;padding:11px 18px;border:1px solid #d6e1d5;background:transparent;color:#536d5c;border-radius:8px}
.chip:hover{background:#eaf0e4;border-color:#b1c2a8}
.chip.active{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 3px 8px #21493112}
.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}
.grid>.empty{grid-column:1/-1}
.card{border:1px solid #dfe6dd;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);transition:box-shadow .2s,border-color .2s,transform .2s}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 36px #27473710;border-color:#becfba}
.card .portrait{height:210px;background:#e8ede3}
.card .portrait img{object-position:center 30%}
.card-body{padding:23px}
.card h3{font-size:19px;margin:9px 0 6px}
.card p{font-size:13px;line-height:1.8;margin:14px 0;color:#627267}
.card .role,.role{font-size:10px;font-weight:700;letter-spacing:.7px;color:#55704e}
.card-foot{border-top:1px solid #e6ebe3;padding-top:17px;margin-top:20px;font-size:12px;gap:8px}
.arrow{width:35px;height:35px;flex-shrink:0;background:#f0f5ea;border:1px solid #dce6d4;color:#3d6444}
.tag{background:#fffffff0;color:#3f6046;font-size:9px;font-weight:500;border:1px solid #ffffffaa;border-radius:5px;bottom:14px;left:14px;padding:5px 9px}
.hint{color:#67786c;font-size:12px;line-height:1.7}
.panel{padding:32px;border:1px solid #dfe5dd;border-radius:var(--radius);box-shadow:var(--shadow);background:white;margin-top:24px}
.panel h3{margin-top:20px}.panel h3:first-child{margin-top:0}
.notice{background:#eff3e9;border:1px solid #dfe7d5;border-radius:12px;padding:19px 22px;line-height:1.8;font-size:13px;color:#4a6250}
.notice p{color:#5d715d}
/* Larger campaign blocks keep their existing copy and links. */
.wrap>.notice{padding:38px 42px;margin:0 0 24px;background:#edf2e5;border-color:#dbe5cf;position:relative}
.wrap>.notice h2{font-size:32px;margin:14px 0;color:#355740}
.wrap>.notice p{max-width:700px;font-size:14px}
.band{background:#244d3e;border:1px solid #244d3e;border-radius:18px;padding:44px 42px;gap:32px}
.band h2,.band h3{color:#f5f8ec;font-size:31px;line-height:1.35}
.band p{color:#d0ddcc;max-width:650px;font-size:14px}
.band .eyebrow{color:#c3d5aa}
.band .btn{background:#dbe8c5;color:#254735;border-color:#dbe8c5;flex-shrink:0}
.band .btn:hover{background:#edf4dd}
.steps{gap:28px}
.step{border-top:1px solid #cbd9c7;padding:26px 0}
.step b{font-size:23px;font-weight:500;color:#7b926a}
.step h3{font-size:18px;margin:16px 0 10px}
.step p{font-size:14px;line-height:1.8}
.profile-layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px}
.profile-layout>div,.profile-layout aside{min-width:0}
.profile-layout .panel{margin-top:0;margin-bottom:22px}
.profile-layout aside{padding:20px;background:#fff}
.profile-layout aside .portrait{height:280px;border-radius:12px;background:#eaf0e4}
.profile-layout .page-title{font-size:38px;letter-spacing:-.045em;margin:14px 0}
.profile-layout .panel h3{border-top:1px solid #e6ece1;padding-top:23px;margin-top:28px}
.profile-layout .panel h3:first-child{border-top:0;padding-top:0;margin-top:0}
.profile-layout aside h3{font-size:24px}
.pill{background:#eef3e8;color:#4b6a4c;border:1px solid #e0e9d8;font-size:11px;padding:6px 11px;border-radius:7px;line-height:1.5}
.blog-grid{gap:24px}
.blog-card{padding:30px;display:flex;flex-direction:column;min-height:280px;border-top:3px solid #a6bd8e}
.blog-card h2{font-size:23px;line-height:1.4;margin:20px 0 10px}
.blog-card p{font-size:14px}
.blog-card>.text-link{margin-top:auto;padding-top:16px;font-size:13px}
.blog-cat{font-size:10px;font-weight:700;letter-spacing:1px;color:#5a784f;line-height:1.7}
.article{max-width:900px}
.article>.panel{padding:42px}
.article .page-title{font-size:39px;line-height:1.3}
.article-body{font-size:16px;line-height:1.95;color:#435c4c;margin-top:28px}
.plan-grid{gap:20px;align-items:stretch}
.plan{padding:30px 24px;border-radius:14px;gap:14px;overflow:visible;min-width:0}
.plan h3{font-size:19px}
.plan .price{font-size:32px;font-weight:600;letter-spacing:-1.5px}
.plan .price small{font-size:12px;color:var(--muted)}
.plan ul{font-size:13px;line-height:2.2;padding-left:18px}
.plan.selected{border:2px solid #6b8c56;background:#f8fbf3;box-shadow:0 8px 28px #4c663510}
.recommended{top:-14px;left:24px;border-radius:6px;background:#335c40;color:#fff;font-size:10px;letter-spacing:.4px;padding:7px 13px}
.plan .btn{width:100%}
.plan-total{font-size:13px}
.checkout-summary{border-top:3px solid #799361}
.payment-placeholder{background:#f4f7ee;border-color:#b5c7a6;padding:26px}
/* Shared forms: native controls, labels and all event targets remain intact. */
.auth-wrap{max-width:860px;margin:50px auto 70px;padding:0 28px}
.auth-wrap> .eyebrow{margin-bottom:12px}
.auth-wrap h1{font-size:38px;letter-spacing:-.045em;margin:18px 0 26px}
.auth-wrap .panel{padding:32px;margin-top:22px}
.auth-wrap input:not([type=checkbox]):not([type=radio]),.auth-wrap select,.auth-wrap textarea,.field input,.field select,.field textarea,.filter-row select{width:100%;border:1px solid #cfdacf;border-radius:8px;background:#fcfdfa;color:var(--ink);font-size:14px;line-height:1.5;padding:12px 14px;min-height:46px;box-shadow:inset 0 1px 2px #26453103}
.auth-wrap input::placeholder,.auth-wrap textarea::placeholder{color:#798778;opacity:1}
.auth-wrap input:focus,.auth-wrap select:focus,.auth-wrap textarea:focus,.field input:focus,.field select:focus,.field textarea:focus{background:white;border-color:#819f73;box-shadow:0 0 0 3px #9cb7841c}
.auth-wrap input:disabled,.auth-wrap select:disabled{background:#eef1eb;color:#667564}
.auth-wrap label{font-size:13px;font-weight:500;color:#405d49;margin:17px 0 7px}
.auth-wrap textarea{resize:vertical;min-height:120px}
.auth-wrap input[type=checkbox],.auth-wrap input[type=radio]{width:17px;height:17px;margin-top:3px;flex:0 0 17px;accent-color:#3c6544}
.auth-wrap .check-line{font-size:12px;line-height:1.8;font-weight:400}
.auth-wrap .btn{margin-top:16px}
.auth-tabs{gap:8px;border-bottom:1px solid var(--line);padding-bottom:16px}
.auth-tabs .btn{margin-top:0}
.auth-note{border:1px solid #d8e4d1;background:#edf4e8;color:#3c6541;padding:18px 21px;border-radius:10px;font-size:13px}
.auth-note.error{border-color:#efd0c5;background:#fcf0e9;color:#893a2a}
.auth-wrap fieldset{border:1px solid #dce4d8;background:#fafcf7;border-radius:12px;padding:20px;margin:26px 0}
.auth-wrap legend{padding:0 8px;font-size:13px;color:#36583b}
.profile-choices{gap:4px 16px}
.profile-choices label{background:#fff;border:1px solid #e3e9de;border-radius:7px;padding:10px 11px;margin:4px 0;font-size:12px;line-height:1.7}
.profile-choices label:has(input:checked){border-color:#abc398;background:#edf4e6;color:#365b35}
.auth-wrap summary{font-weight:600;text-decoration:none;font-size:14px;line-height:1.7;color:#365a3c;cursor:pointer}
.auth-wrap details{border-top:1px solid #e5ebe0;padding-top:10px;margin:20px 0}
.auth-wrap details[open]>summary{margin-bottom:18px}
.auth-wrap .notice{padding:22px;border-radius:12px}
.auth-wrap .notice h3{margin-top:0}
.auth-wrap .actions{align-items:center;gap:10px}
.status{border-radius:6px;background:#eaf1df;color:#4b683e;padding:6px 10px;font-size:11px;font-weight:600;line-height:1.6;border:1px solid #dce7cf}
.status.pending{background:#f8efd9;color:#795c19;border-color:#eadcb4}
.status.rejected{background:#faeae2;color:#8c4934;border-color:#edcfc0}
.doc-list li{background:#f6f8f2;border:1px solid #e3e9dd;border-radius:8px;padding:16px;margin:10px 0;line-height:1.7}
.photo-layout{gap:30px;align-items:center}
.photo-preview{width:136px;height:136px;flex-basis:136px;border:5px solid #f0f5e9;box-shadow:0 0 0 1px #d4dfcc;background:#e5eddc;color:#5c7550;font-size:12px}
.photo-layout h2{font-size:25px;letter-spacing:-.035em}
.photo-layout p{font-size:13px;margin:8px 0}
.photo-layout .hint{font-size:11px}
.calendar-navigation{padding-bottom:14px;border-bottom:1px solid #e3e9dd;gap:12px}
.calendar-day{min-height:65px;border-color:#e0e7d9;border-radius:8px;color:#45613e;background:#fafcf7;line-height:1.6}
.calendar-day.available{background:#e7f0dc;border-color:#bfd0a8}
.calendar-day.selected{background:#355e41;color:white;border-color:#355e41}
.calendar-day:disabled{opacity:.5}
.calendar-weekday{font-size:10px;font-weight:600;color:#73836b}
.slot-line{align-items:center;border-bottom:1px solid #e4ebdd;padding:12px 0;font-size:13px}
.post-editor{padding:26px;border-color:#d7e2ce;background:#f9fbf5;border-radius:12px}
.rating-summary{border:1px solid #dce7d1;background:#f0f5e8;border-radius:12px;padding:22px;gap:18px;font-size:13px;color:#526e42}
.rating-big{font-family:Manrope,sans-serif;font-size:32px;font-weight:600;color:#34593e}
.review{padding:24px 0;border-color:#e1e9d9;font-size:13px}
.review p{font-size:14px;line-height:1.8}
/* Owner workspace: calmer navigation, stronger separation of controls and content. */
.admin-mode{background:#f3f6ef}
.admin-mode .auth-wrap{max-width:1320px;margin:34px auto 70px;padding:0 30px}
.admin-layout{grid-template-columns:230px minmax(0,1fr);gap:32px;margin-top:20px}
.admin-sidebar{top:22px;background:#fff;border:1px solid #dce4d5;border-radius:15px;padding:24px 16px;box-shadow:var(--shadow)}
.admin-sidebar>div:first-child{padding:0 10px}
.admin-sidebar .eyebrow{font-size:9px;letter-spacing:1.2px}
.admin-sidebar h3{font-size:21px;font-weight:600;letter-spacing:-.05em}
.admin-sidebar p{font-size:11px;color:#708066}
.admin-sidebar nav{gap:5px;margin-top:24px}
.admin-sidebar nav a{font-size:12px;padding:12px 13px;border-radius:7px;border:1px solid transparent;color:#4d6748}
.admin-sidebar nav a.active{background:#2e5840;color:#fff;border-color:#2e5840;box-shadow:0 3px 9px #23483214}
.admin-sidebar nav a:hover{background:#edf3e5;color:#3e623b}
.admin-sidebar nav a.active:hover{background:#244b35;color:#fff}
.admin-sidebar-foot{margin-top:25px;padding:20px 10px 0;border-color:#e2e9dc;font-size:11px}
.admin-content-head{padding:14px 0 18px;color:#566d4e;font-size:12px;border-color:#dbe4d2;align-items:center}
.admin-content-head button{font-size:11px;text-underline-offset:4px;padding:6px 0}
.admin-welcome{padding-top:32px}
.admin-welcome h1{font-size:36px;letter-spacing:-.05em;margin:16px 0}
.admin-welcome p{font-size:14px}
.admin-summary{gap:20px;grid-template-columns:1.25fr 1fr}
.admin-summary .panel{padding:28px}
.admin-summary .panel:nth-child(2){background:#edf3e4;border-color:#d7e3c9}
.admin-summary .panel:nth-child(2) h2{font-size:39px;font-weight:600;letter-spacing:-.04em;margin:16px 0}
.admin-shortcuts{gap:16px}
.admin-shortcuts .panel{padding:23px;border-radius:12px}
.admin-shortcuts .panel:hover{border-color:#b1c49d;background:#fbfdf7}
.admin-shortcuts h3{font-size:15px;margin:0 0 10px}
.admin-shortcuts p{font-size:12px;margin:0}
.admin-mode #own-review>summary{font-size:16px;color:#365a3e}
.admin-mode .auth-wrap>.hint{font-size:11px;max-width:920px}
.legal-layout{gap:28px}
.legal-nav{border-color:var(--line);background:#fff;border-radius:12px;padding:20px}
.legal-copy{box-shadow:var(--shadow)}
.legal-copy h2{font-size:26px}
.legal-copy h3{font-size:17px;margin-top:28px}
.legal-copy p{font-size:14px;line-height:1.9}
.table th,.legal-table th{color:#42603e;background:#f0f5e9;font-weight:600}
.table td,.table th,.legal-table td,.legal-table th{border-color:#e0e8d9;font-size:12px;line-height:1.7}
body>footer{padding:38px max(28px,calc((100vw - 1240px)/2));background:#fff;border-top:1px solid #dfe5db;gap:24px;font-size:11px;line-height:1.8}
body>footer a:hover{text-decoration:underline;text-underline-offset:4px}
.toast{background:#244d3e;border:1px solid #476a4f;border-radius:10px;box-shadow:0 12px 32px #142c2929;font-size:13px}
/* Responsive adjustments preserve all native hidden/permission states. */
@media(min-width:1500px){.hero{gap:80px}.hero-art{height:435px}}
@media(max-width:1150px){body>header{padding:20px 28px;gap:18px}body>header>nav{gap:12px}body>header>nav a{font-size:11px}.hero{gap:34px}.hero h1{font-size:49px}.hero-art{height:380px}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.plan .price{font-size:29px}.plan{padding:27px 20px}.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}}
@media(max-width:900px){.wrap{padding-left:28px;padding-right:28px}.page{padding:42px 28px 65px}.hero{min-height:auto;padding-top:48px;padding-bottom:44px;gap:28px}.hero h1{font-size:42px}.hero p{font-size:14px}.hero-art{height:350px}.hero-art .orb{left:20px;top:60px;width:150px;height:150px}.hero-art .path{left:20px}.hero-art .path.b{left:165px}.hero-art .float{padding:16px;font-size:12px}.hero-art .float.top{right:18px;top:30px}.hero-art .float.bottom{left:18px;right:18px;bottom:20px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-layout{grid-template-columns:minmax(0,1fr)}.profile-layout aside{max-width:520px;width:100%}.band{padding:32px;flex-wrap:wrap}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head h2{font-size:27px}.admin-layout{gap:22px}.admin-mode .auth-wrap{padding:0 22px}.admin-shortcuts{grid-template-columns:1fr}.admin-shortcuts .panel{margin-top:12px}}
@media(max-width:850px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static;padding:18px}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.admin-sidebar-foot{padding:15px 0 0;margin-top:16px}.admin-summary{grid-template-columns:1fr}.admin-content-head{padding-top:0}.admin-welcome{padding-top:20px}}
@media(max-width:720px){body>header{padding:18px 20px;min-height:78px;gap:16px}body>header>nav{gap:8px}body>header>nav .btn{padding:10px 12px;min-height:38px;font-size:11px}.demo{padding:9px 20px;font-size:10px;gap:12px}.mobile-links{padding:14px 20px;background:#fff;border-bottom:1px solid var(--line);gap:22px;font-size:12px;color:#4e6c45}.hero{grid-template-columns:1fr;gap:32px;padding-top:38px}.hero h1{font-size:48px;max-width:560px}.hero p{font-size:15px}.hero-art{height:300px;max-width:560px;width:100%;justify-self:center}.hero-art .orb{left:70px;top:38px;width:150px;height:150px}.hero-art .path{left:85px;height:330px}.hero-art .path.b{left:260px;height:370px}.hero-art .float.top{top:25px;right:25px}.hero-art .float.bottom{left:25px;right:25px;bottom:24px}.section{padding:42px 0}.blog-grid{grid-template-columns:1fr}.searchbar{flex-wrap:wrap;gap:8px}.searchbar input{flex:1 1 100%;border-bottom:1px solid #e3eadc;border-radius:0}.searchbar select{border-left:0;flex:1 1 45%;padding:12px}.searchbar .btn{flex:1 1 45%;width:auto}.steps{grid-template-columns:1fr;gap:5px}.step{padding:24px 0}.wrap>.notice{padding:28px}.wrap>.notice h2{font-size:28px}.band h2{font-size:28px}.article>.panel{padding:26px}.article .page-title{font-size:31px}.auth-wrap{padding:0 20px;margin-top:32px}.auth-wrap .panel{padding:25px}.auth-wrap h1{font-size:33px}.profile-layout .page-title{font-size:32px}.plan-grid{grid-template-columns:1fr}.plan .price{font-size:36px}.plan{padding:30px}.admin-mode header nav a{font-size:11px}.photo-layout{gap:22px}.photo-layout h2{font-size:23px}body>footer{padding:30px 20px}}
@media(max-width:540px){.wrap{padding:0 20px}.page{padding:32px 20px 55px}.hero h1{font-size:42px}.hero{padding-top:30px}.hero-art{height:285px;border-radius:16px}.hero-art .orb{left:35px}.hero-art .path{left:50px}.hero-art .path.b{left:190px}.hero-art .float span{font-size:10px}.hero-art .float{padding:15px}.hero-art .float.bottom{left:20px;right:20px}.section-head{align-items:flex-start;gap:15px;flex-wrap:wrap}.section-head h2{font-size:25px}.chips{gap:7px;margin:20px 0 24px}.chip{font-size:11px;padding:10px 12px}.grid{gap:14px;grid-template-columns:1fr}.card .portrait{height:260px}.card-body{padding:24px}.card h3{font-size:20px}.card-foot{font-size:13px}.band{padding:28px}.band h2{font-size:26px}.panel{padding:23px}.auth-wrap .panel{padding:22px}.auth-wrap .notice{padding:18px}.auth-wrap fieldset{padding:14px}.profile-choices{grid-template-columns:1fr}.photo-layout{align-items:flex-start;flex-direction:column}.photo-preview{flex-basis:120px;width:120px;height:120px}.admin-mode .auth-wrap{padding:0 16px}.admin-sidebar nav a{padding:11px 10px;font-size:11px}.admin-welcome h1{font-size:31px}.admin-summary .panel{padding:24px}.live-calendar-grid{gap:4px}.calendar-day{min-height:55px;padding:4px;font-size:12px}.calendar-day small{font-size:8px}.calendar-navigation{gap:6px;font-size:12px}.calendar-navigation .btn{padding:8px 10px;font-size:11px}.post-editor{padding:18px}.rating-summary{padding:18px;gap:10px}.rating-big{font-size:28px}.btn{padding:13px 18px;font-size:13px}.auth-wrap .actions{align-items:stretch}.auth-wrap .actions .btn{flex:1 1 auto}.filter-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.card:hover{transform:none}}
[hidden]{display:none!important}

.legal-consents{border:1px solid #d5ded5;border-radius:16px;padding:20px;margin:24px 0}.legal-consents legend{font-weight:600;padding:0 8px}.legal-check{display:flex!important;align-items:flex-start;gap:12px;margin:18px 0!important;line-height:1.6}.legal-check input[type=checkbox]{width:20px!important;height:20px;flex:0 0 20px;margin-top:4px;accent-color:#285245}.legal-check a{text-decoration:underline;text-underline-offset:3px}
