/**
 * Avenlo Booking Suite — production stylesheet
 * Author: Frey Gabor
 * Brand: FreyDesigns and Developments
 * Copyright (c) 2026-present Frey Gabor. All rights reserved.
 * Licensed under the included FreyDesigns commercial licence.
 */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{--ink:#101426;--navy:#11172d;--navy-2:#1b2240;--paper:#f7f4ec;--white:#fff;--mist:#e9eaf1;--line:#d9d9e2;--muted:#687087;--primary:#4f5cff;--accent:#ff795b;--mint:#a7f3d0;--warning:#f8d66d;--danger:#d74755;--success:#238568;--shadow:0 22px 60px rgba(19,24,48,.12);--small-shadow:7px 7px 0 rgba(17,23,45,.12);--radius:22px;--shell:min(1420px,calc(100vw - 64px));--display:'Manrope',sans-serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}body.portal-page{background:#f2f3f8}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-color:var(--accent)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}.shell{width:var(--shell);margin-inline:auto}.narrow{max-width:900px}.skip-link{position:fixed;left:18px;top:-100px;z-index:9999;background:var(--white);padding:12px 18px;border:2px solid var(--ink)}.skip-link:focus{top:18px}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,h4{font-family:var(--display);line-height:1.02;letter-spacing:-.045em;margin:0 0 .7em}h1{font-size:clamp(3.2rem,7vw,7.6rem)}h2{font-size:clamp(2.2rem,4vw,4.4rem)}h3{font-size:1.35rem}p{margin:0 0 1.35rem}.lead{font-size:1.25rem;color:var(--muted);max-width:65ch}.eyebrow{display:block;color:var(--primary);font-family:var(--display);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}.dark{background:var(--navy);color:var(--white)}.section-space{padding-block:92px}.section-gap{margin-top:26px}.span-two{grid-column:1/-1}.muted{color:var(--muted)}

.announcement{min-height:34px;background:var(--accent);display:flex;align-items:center;justify-content:space-around;padding:7px 5vw;color:var(--navy);font:800 .68rem var(--display);letter-spacing:.15em;text-transform:uppercase}.site-header{background:rgba(247,244,236,.96);border-bottom:1px solid rgba(16,20,38,.12);position:relative;z-index:50}.nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}.brand-logo{display:block;width:52px;height:52px;object-fit:contain;flex:0 0 52px}.brand-light .brand-logo,.installer-brand .brand-logo{background:#fff;border-radius:13px;padding:4px}.brand strong,.brand small{display:block}.brand strong{font:800 1rem var(--display);letter-spacing:-.02em}.brand small{color:var(--muted);font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:27px}.nav-links>a{text-decoration:none;font:700 .78rem var(--display);letter-spacing:.04em}.nav-book{padding:13px 20px;background:var(--navy);color:#fff;border-radius:999px}.nav-toggle{display:none;background:transparent;border:1px solid var(--ink);padding:10px 15px;font-weight:700}.admin-notice,.preview-bar{background:#fff1c4;padding:10px 4vw;text-align:center;font-weight:700}.flash-stack{position:relative;z-index:60}.flash{margin-top:14px;padding:13px 18px;border:1px solid}.flash-success{background:#e0f7eb;border-color:#67b99a}.flash-error{background:#ffeaeb;border-color:#db6d75}

.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:13px 23px;border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);text-decoration:none;font:800 .76rem var(--display);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 0 rgba(17,23,45,.13);text-decoration:none}.button-primary{background:var(--primary);border-color:var(--primary);color:#fff}.button-secondary{background:var(--white)}.button-light{background:#fff;border-color:#fff;color:var(--navy)}.button-outline-light{border-color:rgba(255,255,255,.6);color:#fff}.button-wide{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

.hero{overflow:hidden;position:relative;padding:86px 0 100px;background:linear-gradient(128deg,#f9f7f0 0 55%,#dfe2ff 55% 100%)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:8vw;align-items:center}.hero h1{max-width:760px}.hero p{font-size:1.26rem;color:#4e566d;max-width:610px}.hero dl{display:flex;gap:45px;margin:58px 0 0}.hero dl div{border-left:2px solid var(--ink);padding-left:14px}.hero dt{font:800 1.35rem var(--display)}.hero dd{margin:2px 0;color:var(--muted);font-size:.8rem}.hero-orbit{position:absolute;right:-90px;top:-90px;width:470px;height:470px;border:1px solid rgba(79,92,255,.22);border-radius:50%}.hero-orbit span{position:absolute;border:1px solid rgba(79,92,255,.22);border-radius:50%;inset:12%}.hero-orbit span:nth-child(2){inset:25%}.hero-orbit span:nth-child(3){inset:39%;background:var(--accent);border:0}.hero-scheduler{position:relative;background:#fff;border:1px solid var(--ink);border-radius:28px;padding:28px;box-shadow:18px 18px 0 var(--navy);z-index:2}.scheduler-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px}.scheduler-head span{color:var(--muted)}.weekdays,.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;text-align:center}.weekdays{padding:20px 0 8px;font:700 .68rem var(--display);color:var(--muted)}.mini-calendar span{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;font-weight:600}.mini-calendar .selected{background:var(--primary);color:#fff}.mini-calendar .muted{opacity:.2}.time-options{display:flex;gap:8px;margin-top:20px}.time-options span{flex:1;padding:10px;border:1px solid var(--line);border-radius:9px;text-align:center;font-weight:700}.time-options .active{background:#e8eaff;border-color:var(--primary);color:var(--primary)}.scheduler-confirm{display:flex;justify-content:space-between;gap:20px;background:var(--navy);color:#fff;border-radius:14px;padding:17px 18px;margin-top:20px}.scheduler-confirm strong{color:var(--mint)}.trust-strip{background:var(--navy);color:#fff}.trust-strip .shell{display:grid;grid-template-columns:repeat(5,1fr);text-align:center;padding:19px 0;font:700 .72rem var(--display);letter-spacing:.11em;text-transform:uppercase}.intro-section{display:grid;grid-template-columns:1.15fr .85fr;gap:12vw;padding:115px 0}.intro-section>div:last-child{padding-top:30px;font-size:1.12rem}.intro-section a{font-weight:700}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-heading>a{font-weight:700}.services-section{padding-bottom:110px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.service-card{display:grid;grid-template-columns:200px 1fr;min-height:260px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-visual{display:flex;flex-direction:column;justify-content:space-between;padding:19px;background:linear-gradient(155deg,var(--card-color),var(--navy));color:#fff;text-decoration:none}.service-visual span{font:800 2.4rem var(--display)}.service-visual strong{font:700 .72rem var(--display);letter-spacing:.15em;text-transform:uppercase}.service-card>div{display:flex;flex-direction:column;padding:26px}.service-card h3 a{text-decoration:none}.service-card p{color:var(--muted);font-size:.92rem}.service-card footer{display:flex;justify-content:space-between;margin-top:auto;border-top:1px solid var(--line);padding-top:15px}.service-card footer a{font-weight:700}.process{padding:100px 0}.process .eyebrow{color:var(--mint)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #424a68}.process-grid article{padding:34px 45px 15px 0;border-right:1px solid #424a68}.process-grid article+article{padding-left:45px}.process-grid span{color:var(--accent);font:700 1rem var(--display)}.process-grid p{color:#b7bed0}.dashboard-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center;padding:120px 0}.tick-list{padding:0;list-style:none}.tick-list li{border-bottom:1px solid var(--line);padding:13px 0}.tick-list li:before{content:'✓';color:var(--success);font-weight:800;margin-right:10px}.dashboard-preview{background:var(--navy);color:#fff;border-radius:28px;padding:30px;box-shadow:18px 18px 0 #d7d9e4}.dashboard-preview header{display:flex;justify-content:space-between}.preview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}.preview-metrics span,.preview-list span{background:var(--navy-2);border-radius:13px;padding:16px}.preview-metrics b{display:block;font:800 2rem var(--display);color:var(--mint)}.preview-list{display:grid;gap:8px}.preview-list span i{display:inline-block;width:8px;height:8px;background:var(--accent);border-radius:50%;margin-right:10px}

.simple-hero{padding:90px 0;background:#ececf7}.simple-hero.dark{background:var(--navy)}.simple-hero h1{font-size:clamp(3.5rem,7vw,7.4rem)}.simple-hero p{font-size:1.2rem;max-width:630px;color:var(--muted)}.simple-hero.dark p{color:#c2c7d8}.filter-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:35px}.filter-nav a{padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;text-decoration:none;font-weight:700}.filter-nav a.active{background:var(--navy);color:#fff;border-color:var(--navy)}.service-detail-hero{padding:100px 0;background:linear-gradient(135deg,#e8eaff 0 68%,var(--accent) 68%)}.service-detail-hero>.shell{display:grid;grid-template-columns:1fr .65fr;gap:80px;align-items:center}.service-detail-hero h1{font-size:clamp(3.5rem,6vw,6.5rem)}.service-detail-hero p{font-size:1.25rem;max-width:60ch}.service-detail-hero dl{display:flex;gap:35px;margin:35px 0}.service-detail-hero dt{color:var(--muted);font-size:.75rem;text-transform:uppercase}.service-detail-hero dd{margin:3px 0;font-weight:700}.service-poster{display:grid;place-items:center;aspect-ratio:4/5;background:linear-gradient(150deg,var(--card-color),var(--navy));border-radius:35px;color:#fff;box-shadow:20px 20px 0 rgba(255,255,255,.55)}.service-poster span{font:800 clamp(4rem,8vw,8rem) var(--display)}.service-poster strong{text-transform:uppercase;letter-spacing:.18em}.detail-copy{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px;padding:110px 0}.detail-copy p{font-size:1.1rem}.inline-people,.profile-services{display:grid;gap:8px}.inline-people a,.profile-services a{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:13px 0;text-decoration:none}.inline-people span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e6e8ff;color:var(--primary);font-weight:800;margin-right:auto}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 25px}.team-grid article:nth-child(2){margin-top:100px}.team-grid article:nth-child(5){margin-top:-80px}.team-grid h2{font-size:2rem;margin-top:8px}.team-grid h2 a{text-decoration:none}.team-grid p{color:var(--muted)}.portrait{display:grid;place-items:end start;aspect-ratio:4/5;padding:25px;background:#dfe1f0;color:#69708b;text-decoration:none;font:700 clamp(3rem,7vw,6rem) var(--display);border-radius:100px 100px 18px 18px}.portrait-2{background:#ffd5cc;color:#a75140}.portrait-3{background:#d4f0e2;color:#3f7c65}.portrait-4{background:#d7d5ff;color:#5953a0}.portrait-5{background:#f2dda7;color:#8c6923}.profile-detail{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;padding:100px 0}.portrait-large{max-width:480px}.profile-detail h1{font-size:clamp(3.5rem,6vw,6rem)}.location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.location-grid article{background:#fff;padding:28px;border-radius:var(--radius);border:1px solid var(--line)}.location-map{position:relative;display:flex;justify-content:space-between;height:260px;margin:-28px -28px 28px;padding:24px;background:linear-gradient(135deg,var(--card-color),#dfe1ed);overflow:hidden;border-radius:var(--radius) var(--radius) 0 0}.location-map span{font:800 3rem var(--display)}.location-map i{position:absolute;width:180px;height:180px;border:25px solid rgba(255,255,255,.7);border-radius:50%;right:50px;top:35px}.location-map i:after{content:'';position:absolute;inset:25px;border:2px solid var(--navy);border-radius:50%}.location-grid address{font-style:normal;margin-bottom:25px;color:var(--muted)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pricing-grid article{display:flex;flex-direction:column;min-height:390px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.pricing-grid article.featured{background:var(--navy);color:#fff;transform:translateY(-15px)}.pricing-grid article>span{color:var(--accent);font:800 1.5rem var(--display)}.pricing-grid article>strong{font:800 2.3rem var(--display);margin-top:auto}.pricing-grid article>small{color:var(--muted);margin-bottom:18px}

.booking-hero,.account-hero{padding:65px 0;background:var(--navy);color:#fff}.booking-hero h1,.account-hero h1{font-size:clamp(3rem,6vw,6rem)}.portal-page .account-hero.shell{padding:54px 38px}.portal-page .account-hero h1{font-size:clamp(2.65rem,4vw,4.25rem)}.portal-page .account-hero p{max-width:65ch}.booking-layout,.account-layout,.contact-layout,.two-column{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:28px;align-items:start;padding:55px 0 100px}.panel{background:#fff;border:1px solid #dfe0e8;border-radius:18px;padding:28px;box-shadow:var(--small-shadow)}.booking-form fieldset{border:0;padding:0;margin:0 0 30px}.booking-form legend{font:800 1.35rem var(--display);margin-bottom:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.panel label,.auth-card label,.install-card label{display:grid;gap:7px;margin-bottom:15px;font-weight:700;font-size:.86rem}.panel label small{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;min-height:50px;border:1px solid #cfd1dc;border-radius:8px;background:#fff;padding:11px 13px;color:var(--ink)}textarea{min-height:125px;resize:vertical}.checkbox,.toggle{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:10px}.checkbox input,.toggle input{width:19px;min-height:19px}.honeypot{position:absolute!important;left:-10000px!important}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slots button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;cursor:pointer}.slots button:hover,.slots button.active{border-color:var(--primary);background:#e9eaff;color:var(--primary)}.booking-aside{position:sticky;top:25px}.booking-aside h2{font-size:2.2rem}.detail-list{padding:0;list-style:none}.detail-list li{border-bottom:1px solid var(--line);padding:12px 0}.form-error{padding:12px;background:#ffeaeb;border-left:4px solid var(--danger);color:#7e2028}.confirmation{text-align:center}.success-mark{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#d8f7e8;color:var(--success);font-size:2rem;margin:0 auto 20px}.account-card{padding:25px;border:1px solid var(--line);border-radius:15px;margin-bottom:15px;background:#fff}.account-card header{display:flex;justify-content:space-between}.account-card h2{font-size:1.5rem}.profile-panel{position:sticky;top:25px}.contact-card{background:var(--navy);color:#fff;padding:34px;border-radius:var(--radius)}.contact-card a{color:var(--mint)}.faq-list{max-width:950px;margin:0 auto;padding:80px 0}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list summary{cursor:pointer;font:700 1.18rem var(--display)}.faq-list p{padding:15px 40px 0 0;color:var(--muted)}.legal{max-width:900px;padding:80px 0}.legal h2{font-size:2rem;margin-top:40px}

.portal-heading{padding:46px 38px 0;background:#fff;border-bottom:1px solid var(--line)}.portal-heading .action-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.portal-heading h1{font-size:clamp(2.45rem,3.6vw,4.1rem);margin-bottom:10px}.portal-heading p{color:var(--muted);max-width:65ch}.portal-tabs{display:flex;gap:25px;overflow-x:auto;margin-top:35px}.portal-tabs a{padding:14px 0;border-bottom:3px solid transparent;text-decoration:none;white-space:nowrap;font-weight:700}.portal-tabs a.active{color:var(--primary);border-color:var(--primary)}.portal-content{padding-block:32px 90px}.portal-content h2{font-size:clamp(1.65rem,2.1vw,2.55rem);letter-spacing:-.035em}.portal-content h3{font-size:1.2rem;letter-spacing:-.025em}.status-bar{display:flex;flex-wrap:wrap;gap:28px;padding:17px 23px;background:var(--navy);color:#fff;border-radius:14px;margin-bottom:20px}.status-bar span{display:grid;font-size:.73rem;color:#b9bfd2}.status-bar strong{color:#fff;font-size:.9rem}.status-bar i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--success);margin-right:8px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--line);border-radius:15px;padding:23px;box-shadow:4px 4px 0 #dedfe8}.metric span{font:800 .7rem var(--display);letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.metric strong{display:block;font:800 2.4rem var(--display);letter-spacing:-.06em}.metric small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1fr 360px;gap:20px}.panel-heading{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:20px}.panel-heading h2{font-size:2rem}.quick-actions a,.list-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none}.quick-actions small,.list-row small{display:block;color:var(--muted)}.table-wrap{width:100%;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse;min-width:780px}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}th{font:800 .67rem var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:#f7f7fa}td small{display:block;color:var(--muted)}.empty-cell{text-align:center;padding:50px}.status{display:inline-flex;padding:5px 10px;border-radius:999px;background:#e9eaf0;font:700 .69rem var(--display);text-transform:uppercase;letter-spacing:.04em}.status-confirmed,.status-completed,.status-active,.status-valid,.status-sent,.status-paid{background:#d8f7e8;color:#14634b}.status-pending,.status-pending_payment,.status-processing,.status-grace{background:#fff1c4;color:#7b5a00}.status-cancelled,.status-failed,.status-invalid,.status-revoked,.status-no_show{background:#ffeaeb;color:#8c2530}.search-bar{display:flex;align-items:end;gap:12px;margin-bottom:20px}.search-bar label{flex:1;margin:0}.admin-card-grid,.people-cards,.integration-grid,.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.admin-card-art{height:160px;display:grid;place-items:center;background:linear-gradient(140deg,var(--card-color,#dfe1ff),var(--navy));color:#fff;font:800 3rem var(--display)}.admin-card>div:last-child{padding:20px}.admin-card h2{font-size:1.5rem}.admin-card p{color:var(--muted)}.people-cards article{display:grid;grid-template-columns:110px 1fr;gap:20px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.people-cards .portrait{width:110px}.resource-list{display:grid;gap:8px}.integration-grid article,.template-grid a{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;text-decoration:none}.integration-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e6e8ff;color:var(--primary);font:800 1.2rem var(--display);margin-bottom:28px}.integration-grid p{color:var(--muted)}.template-grid span,.template-grid small{display:block;color:var(--muted)}.template-grid strong{display:block;font:700 1.1rem var(--display);margin:4px 0}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.notification-grid,.licence-grid{display:grid;grid-template-columns:1fr 360px;gap:20px}.licence-state strong{display:block;font:800 4rem var(--display)}.licence-state.valid{border-color:var(--success)}.security-note{display:grid;gap:5px;padding:14px;background:#e7f4ed;border-left:4px solid var(--success);font-size:.85rem}.security-note code{overflow-wrap:anywhere}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;background:var(--line);border:1px solid var(--line)}.calendar-day-name{background:var(--navy);color:#fff;padding:10px;text-align:center;font:700 .68rem var(--display);text-transform:uppercase}.calendar-day{min-height:145px;background:#fff;padding:9px}.calendar-day>span{font-weight:800}.calendar-day article{display:block;background:#e7e9ff;border-left:4px solid var(--primary);border-radius:7px;padding:7px;margin-top:6px;font-size:.73rem}.bar-chart{display:grid;gap:12px}.bar-chart div{display:grid;grid-template-columns:150px 1fr 80px;gap:12px;align-items:center}.bar-chart i{display:block;height:14px;max-width:100%;background:var(--primary);border-radius:999px}.bar-chart strong{text-align:right}.check-list{list-style:none;padding:0}.check-list li{padding:11px 0;border-bottom:1px solid var(--line)}.check-list .ok:before{content:'✓';color:var(--success);font-weight:800;margin-right:10px}.check-list .check:before{content:'!';color:#b27b00;font-weight:800;margin-right:10px}

.auth-shell{min-height:680px;display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(145deg,#dfe2ff,var(--accent))}.auth-copy{padding:9vw 7vw;display:flex;flex-direction:column;justify-content:center}.auth-copy h1{font-size:clamp(3.5rem,6vw,6.5rem)}.auth-card{align-self:center;width:min(560px,calc(100% - 50px));margin:55px;background:#fff;padding:40px;border-radius:25px;box-shadow:var(--shadow)}.auth-card h2{font-size:2.5rem}.back-link{display:inline-block;margin-top:20px}.error-page{min-height:65vh;display:grid;place-items:center;text-align:center;padding:60px}.error-page strong{font:800 clamp(6rem,16vw,14rem) var(--display);color:#dfe1ef}.coming-soon-body{background:var(--navy);color:#fff}.coming-soon{min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;width:min(1300px,calc(100vw - 60px));margin:auto;padding:45px 0}.coming-soon h1{max-width:920px}.coming-soon p{max-width:650px;color:#c1c7d8;font-size:1.2rem}.coming-soon footer{display:flex;justify-content:space-between;border-top:1px solid #3c4565;padding-top:24px}.brand-light small{color:#aeb5ca}

.installer-body{background:linear-gradient(135deg,var(--navy),#252e56);min-height:100vh;padding:35px 20px}.installer{width:min(920px,100%);margin:auto}.installer-header{display:flex;justify-content:space-between;align-items:center;color:#fff;margin-bottom:20px}.installer-brand{display:flex;align-items:center;gap:12px;color:#fff;font:800 1rem var(--display)}.installer-brand .brand-logo{width:46px;height:46px;flex-basis:46px}.install-progress{height:7px;background:#323b62;border-radius:99px;overflow:hidden;margin-bottom:25px}.install-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent))}.install-card{background:#fff;border-radius:25px;padding:40px;box-shadow:var(--shadow)}.install-card h1{font-size:clamp(2.6rem,5vw,4.5rem)}.install-errors{background:#ffeaeb;border:1px solid #db6d75;border-radius:15px;padding:12px 20px;margin-bottom:15px}.install-errors p{margin:5px 0}.install-stages{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:0;list-style:none}.install-stages li{padding:11px;background:#f2f3f8;border-radius:8px}.finish-actions{display:flex;gap:12px;justify-content:center}.centered-card{text-align:center}.centered-card .success-mark{margin-inline:auto}

.footer-cta{background:var(--primary);color:#fff;padding:75px 0}.footer-cta .shell{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px}.footer-cta .eyebrow{color:#fff}.footer-cta h2{max-width:900px;margin-bottom:0}.site-footer{background:#090d1b;color:#fff;padding:75px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:55px}.footer-grid h3{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent)}.footer-grid a{display:block;color:#c4cad8;text-decoration:none;margin-bottom:8px}.footer-grid p{color:#9099ae}.footer-base{display:flex;justify-content:space-between;border-top:1px solid #252c43;color:#777f94;padding-top:22px;margin-top:65px;font-size:.76rem}

@media(max-width:1050px){:root{--shell:min(100% - 38px,920px)}.announcement span:nth-child(2){display:none}.nav-toggle{display:block}.nav-links{display:none;position:absolute;left:19px;right:19px;top:105px;background:#fff;padding:25px;border:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.hero-grid,.service-detail-hero>.shell,.dashboard-story,.booking-layout,.account-layout,.contact-layout,.profile-detail,.detail-copy,.auth-shell{grid-template-columns:1fr}.hero{background:linear-gradient(160deg,#f9f7f0 0 63%,#dfe2ff 63% 100%)}.hero-scheduler{max-width:650px}.service-grid,.settings-grid{grid-template-columns:1fr}.service-card{grid-template-columns:170px 1fr}.team-grid{grid-template-columns:repeat(2,1fr)}.team-grid article:nth-child(n){margin-top:0}.booking-aside,.profile-panel{position:static}.dashboard-grid,.notification-grid,.licence-grid{grid-template-columns:1fr}.admin-card-grid,.people-cards,.integration-grid,.template-grid{grid-template-columns:repeat(2,1fr)}.auth-card{margin:40px auto}.auth-copy{display:none}.footer-cta .shell{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){:root{--shell:calc(100% - 30px)}body{font-size:15px}.announcement{justify-content:center}.announcement span:not(:first-child){display:none}.nav{min-height:78px}.brand-logo{width:46px;height:46px;flex-basis:46px}.brand small{display:none}.hero,.simple-hero,.service-detail-hero{padding:60px 0}.hero dl{gap:15px;flex-wrap:wrap}.hero-scheduler{padding:18px;box-shadow:9px 9px 0 var(--navy)}.trust-strip .shell{grid-template-columns:1fr 1fr}.trust-strip span:last-child{display:none}.intro-section{grid-template-columns:1fr;gap:10px;padding:75px 0}.service-grid,.location-grid,.pricing-grid,.team-grid,.admin-card-grid,.people-cards,.integration-grid,.template-grid{grid-template-columns:1fr}.service-card{grid-template-columns:1fr}.service-visual{min-height:145px}.process-grid{grid-template-columns:1fr}.process-grid article,.process-grid article+article{padding:25px 0;border-right:0;border-bottom:1px solid #424a68}.dashboard-story{gap:45px;padding:75px 0}.service-detail-hero dl{display:grid;gap:12px}.detail-copy{gap:25px;padding:70px 0}.form-grid{grid-template-columns:1fr}.span-two{grid-column:auto}.slots{grid-template-columns:repeat(2,1fr)}.portal-heading{padding:35px 20px 0}.portal-page .account-hero.shell{padding:42px 20px}.portal-heading .action-heading,.section-heading{display:block}.portal-heading .button,.section-heading>a{margin-top:15px}.portal-tabs{gap:20px}.metrics{grid-template-columns:1fr 1fr}.metric{padding:16px}.metric strong{font-size:1.8rem}.people-cards article{grid-template-columns:85px 1fr}.people-cards .portrait{width:85px}.settings-grid{grid-template-columns:1fr}.calendar-day{min-height:90px;padding:4px}.calendar-day article{font-size:.62rem;overflow:hidden}.calendar-day article span{display:none}.bar-chart div{grid-template-columns:100px 1fr 55px}.auth-card{padding:25px;width:calc(100% - 30px)}.install-card{padding:25px}.installer-header{align-items:flex-start}.installer-header small{max-width:110px;text-align:right}.install-stages{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-base{display:grid;gap:8px}.coming-soon footer{display:grid;gap:10px}}

.bar-chart i{width:var(--value)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
