﻿:root {
  --color-surface: #F3F4F4;
  --color-accent: #853953;
  --color-deep: #612D53;
  --color-ink: #2C2C2C;
  --color-white: #ffffff;
  --color-muted: rgba(44, 44, 44, 0.62);
  --color-wash: rgba(133, 57, 83, 0.06);
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.75rem;
  --space-lg: 3rem;
  --space-xl: 5rem;
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 28px;
  --radius-pill: 999px;
  --shadow-soft: 0 8px 32px rgba(44, 44, 44, 0.08);
  --shadow-hover: 0 16px 40px rgba(97, 45, 83, 0.12);
  --font-display: "Zen Kaku Gothic New", sans-serif;
  --font-body: "Noto Sans", sans-serif;
  --transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-surface);line-height:1.7;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--color-deep);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--color-accent)}
ul{list-style:none}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;line-height:1.25;color:var(--color-deep);letter-spacing:-0.01em}
h1{font-size:clamp(2rem,4vw,3.2rem)}
h2{font-size:clamp(1.6rem,3vw,2.4rem)}
h3{font-size:clamp(1.2rem,2vw,1.5rem)}
p{margin-bottom:var(--space-sm)}
.container{width:min(1140px,92vw);margin-inline:auto}
.section{padding-block:var(--space-xl)}
.section-label{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs);display:block}

.disclaimer-bar{background:var(--color-ink);color:rgba(255,255,255,0.82);font-size:0.78rem;padding:0.55rem 0;text-align:center;line-height:1.5}
.disclaimer-bar a{color:rgba(255,255,255,0.95);text-decoration:underline}

.site-header{position:sticky;top:0;z-index:900;background:rgba(243,244,244,0.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(97,45,83,0.07)}
.header-inner{display:flex;flex-direction:column;align-items:center;padding:var(--space-sm) 0 var(--space-md);gap:var(--space-sm)}
.logo{font-family:var(--font-display);font-size:1.15rem;font-weight:500;color:var(--color-deep);letter-spacing:0.06em}
.logo span{color:var(--color-accent)}
.nav-pill{display:flex;flex-wrap:wrap;justify-content:center;gap:0.3rem;background:var(--color-white);padding:0.38rem;border-radius:var(--radius-pill);box-shadow:var(--shadow-soft)}
.nav-pill a{padding:0.5rem 1.1rem;border-radius:var(--radius-pill);font-size:0.86rem;color:var(--color-ink);transition:background var(--transition),color var(--transition),transform var(--transition)}
.nav-pill a:hover,.nav-pill a.active{background:var(--color-deep);color:var(--color-white);transform:translateY(-1px)}
.burger{display:none;background:none;border:none;font-size:1.5rem;color:var(--color-deep);cursor:pointer;padding:0.25rem}

.hero-split{display:grid;grid-template-columns:1fr 1fr;min-height:86vh;position:relative}
.hero-split::after{content:"";position:absolute;bottom:12%;left:50%;width:1px;height:80px;background:linear-gradient(to bottom,transparent,var(--color-accent),transparent);opacity:0.35;animation:linePulse 4s ease-in-out infinite}
.hero-text{display:flex;flex-direction:column;justify-content:center;padding:var(--space-xl) clamp(1.5rem,5vw,4rem);background:var(--color-white);position:relative}
.hero-text::before{content:"";position:absolute;top:var(--space-lg);right:0;width:48px;height:1px;background:var(--color-accent);opacity:0.4}
.hero-text .lead{font-size:1.05rem;color:var(--color-muted);max-width:34ch;margin-bottom:var(--space-md)}
.hero-visual{position:relative;background:linear-gradient(145deg,var(--color-deep) 0%,#4a2240 100%);display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,rgba(133,57,83,0.25),transparent 60%)}
.hero-visual img{width:72%;opacity:0.9;transform:translateX(10%);transition:transform var(--transition-slow);animation:floatSoft 8s ease-in-out infinite}
.hero-visual.is-visible img{transform:translateX(0)}
.hero-badge{display:inline-flex;align-items:center;gap:0.4rem;background:var(--color-wash);color:var(--color-accent);padding:0.35rem 0.9rem;border-radius:var(--radius-pill);font-size:0.76rem;margin-bottom:var(--space-md);width:fit-content;border:1px solid rgba(133,57,83,0.12)}
.btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.82rem 1.65rem;border-radius:var(--radius-pill);font-size:0.9rem;font-weight:500;border:none;cursor:pointer;transition:background var(--transition),transform var(--transition),box-shadow var(--transition)}
.btn-primary{background:var(--color-deep);color:var(--color-white)}
.btn-primary:hover{background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.btn-outline{background:transparent;color:var(--color-deep);border:1.5px solid var(--color-deep)}
.btn-outline:hover{background:var(--color-deep);color:var(--color-white)}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-sm)}

.trust-strip{background:var(--color-white);border-block:1px solid rgba(97,45,83,0.06);padding:var(--space-md) 0}
.trust-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-lg)}
.trust-item{display:flex;align-items:center;gap:0.6rem;font-size:0.84rem;color:var(--color-muted)}
.trust-item i{font-size:1.2rem;color:var(--color-accent)}

.zen-divider{display:flex;align-items:center;gap:var(--space-sm);margin-block:var(--space-lg);opacity:0.5}
.zen-divider::before,.zen-divider::after{content:"";flex:1;height:1px;background:var(--color-accent)}
.zen-divider span{width:6px;height:6px;border-radius:50%;background:var(--color-accent)}

.philosophy{display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--space-lg);align-items:end}
.philosophy-block{padding:var(--space-lg);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);transform:translateY(24px);opacity:0;transition:opacity 0.7s ease,transform 0.7s ease;border:1px solid rgba(97,45,83,0.04)}
.philosophy-block.is-visible{transform:translateY(0);opacity:1}
.philosophy-offset{margin-top:var(--space-xl);padding-left:clamp(0rem,8vw,5rem)}

.highlight-band{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);box-shadow:var(--shadow-soft);border-left:3px solid var(--color-accent)}
.highlight-item h3{font-size:1rem;margin-bottom:0.35rem}
.highlight-item p{font-size:0.9rem;color:var(--color-muted);margin:0}

.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-top:var(--space-lg)}
.pillar-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-md);border:1px solid rgba(97,45,83,0.06);transition:transform var(--transition),box-shadow var(--transition);position:relative;overflow:hidden}
.pillar-card::after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-accent);transition:width var(--transition-slow)}
.pillar-card:hover::after{width:100%}
.pillar-card:nth-child(2){transform:translateY(1.5rem)}
.pillar-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.pillar-card:nth-child(2):hover{transform:translateY(calc(1.5rem - 4px))}
.pillar-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-wash);border-radius:var(--radius-sm);color:var(--color-accent);font-size:1.3rem;margin-bottom:var(--space-sm)}

.flow-section{background:var(--color-white)}
.flow-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:var(--space-lg);align-items:center}
.flow-steps{counter-reset:step}
.flow-step{display:grid;grid-template-columns:auto 1fr;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid rgba(44,44,44,0.06);opacity:0;transform:translateX(-20px);transition:opacity 0.5s ease,transform 0.5s ease}
.flow-step.is-visible{opacity:1;transform:translateX(0)}
.flow-step:nth-child(2){transition-delay:0.1s}
.flow-step:nth-child(3){transition-delay:0.2s}
.flow-step:nth-child(4){transition-delay:0.3s}
.flow-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--font-display);font-size:1.8rem;color:var(--color-accent);opacity:0.45;line-height:1}
.flow-visual{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft)}

.tab-section{background:linear-gradient(180deg,var(--color-surface) 0%,var(--color-white) 100%)}
.tab-nav{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:var(--space-md)}
.tab-btn{padding:0.65rem 1.4rem;border-radius:var(--radius-pill);border:1.5px solid rgba(97,45,83,0.15);background:var(--color-white);font-family:var(--font-display);font-size:0.88rem;color:var(--color-ink);cursor:pointer;transition:all var(--transition)}
.tab-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}
.tab-btn.active{background:var(--color-deep);border-color:var(--color-deep);color:var(--color-white)}
.tab-panel{display:none;animation:fadeSlide 0.45s ease}
.tab-panel.active{display:block}
.tab-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}
.tab-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-soft);transition:transform var(--transition)}
.tab-card:hover{transform:translateY(-3px)}

.routine-builder{background:var(--color-deep);color:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);position:relative;overflow:hidden}
.routine-builder::before{content:"";position:absolute;top:-40%;right:-20%;width:60%;height:120%;background:radial-gradient(circle,rgba(133,57,83,0.3),transparent 70%);pointer-events:none}
.routine-builder h2,.routine-builder h3{color:var(--color-white)}
.routine-builder p{color:rgba(255,255,255,0.78)}
.routine-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);margin-top:var(--space-md)}
.routine-slot{background:rgba(255,255,255,0.08);border:1.5px solid rgba(255,255,255,0.15);border-radius:var(--radius-md);padding:var(--space-md);text-align:center;cursor:pointer;transition:all var(--transition)}
.routine-slot:hover,.routine-slot.selected{background:rgba(255,255,255,0.16);border-color:rgba(255,255,255,0.45);transform:scale(1.02)}
.routine-slot i{font-size:1.6rem;display:block;margin-bottom:0.4rem;color:rgba(255,255,255,0.85)}
.routine-output{margin-top:var(--space-md);padding:var(--space-md);background:rgba(255,255,255,0.1);border-radius:var(--radius-sm);font-size:0.92rem;min-height:3.5rem;transition:opacity var(--transition)}

.features-asymmetric{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-md)}
.feature-tile{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-soft);transition:box-shadow var(--transition),transform var(--transition)}
.feature-tile:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}
.feature-tile:nth-child(1){grid-column:1/6;grid-row:1}
.feature-tile:nth-child(2){grid-column:6/13;grid-row:1;margin-top:2.5rem}
.feature-tile:nth-child(3){grid-column:2/8;grid-row:2}
.feature-tile:nth-child(4){grid-column:8/13;grid-row:2;margin-top:-1rem}
.feature-tile i{font-size:1.5rem;color:var(--color-accent);margin-bottom:var(--space-sm);display:block}

.voices{display:grid;grid-template-columns:1fr 1.4fr;gap:var(--space-lg)}
.voice-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);position:relative;transition:transform var(--transition)}
.voice-card:hover{transform:translateX(4px)}
.voice-card::before{content:"";position:absolute;top:var(--space-md);left:var(--space-md);width:32px;height:3px;background:var(--color-accent);border-radius:2px}
.voice-card blockquote{padding-top:var(--space-md);font-style:italic;color:var(--color-muted)}
.voice-meta{font-size:0.85rem;color:var(--color-accent);margin-top:var(--space-sm)}
.voice-note{font-size:0.78rem;color:var(--color-muted);font-style:italic;margin-top:var(--space-md)}

.counter-section{text-align:center}
.counter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-top:var(--space-lg)}
.counter-box{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-soft)}
.counter-box strong{display:block;font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.2rem);color:var(--color-deep)}
.counter-box span{font-size:0.82rem;color:var(--color-muted)}

.faq-list{max-width:720px;margin-inline:auto}
.faq-item{border-bottom:1px solid rgba(44,44,44,0.08)}
.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) 0;background:none;border:none;font-family:var(--font-display);font-size:1.05rem;color:var(--color-deep);cursor:pointer;text-align:left;transition:color var(--transition)}
.faq-question:hover{color:var(--color-accent)}
.faq-question i{transition:transform var(--transition)}
.faq-item.open .faq-question i{transform:rotate(180deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.45s ease,padding 0.45s ease}
.faq-item.open .faq-answer{max-height:280px;padding-bottom:var(--space-md)}

.cta-band{background:var(--color-deep);color:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg) clamp(1.5rem,5vw,3rem);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md);position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 40%,rgba(133,57,83,0.2) 100%)}
.cta-band>*{position:relative;z-index:1}
.cta-band h2{color:var(--color-white);margin-bottom:0}
.cta-band p{color:rgba(255,255,255,0.75);margin-bottom:0}
.cta-band .btn-primary{background:var(--color-white);color:var(--color-deep)}
.cta-band .btn-primary:hover{background:var(--color-accent);color:var(--color-white)}

.info-panel{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-soft);border-top:3px solid var(--color-accent)}
.info-panel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}
.info-panel-item{padding:var(--space-sm);border-radius:var(--radius-sm);transition:background var(--transition)}
.info-panel-item:hover{background:var(--color-wash)}
.info-panel-item i{color:var(--color-accent);font-size:1.3rem;margin-bottom:0.4rem;display:block}

.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-top:var(--space-lg)}
.pricing-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-soft);border:1.5px solid transparent;transition:all var(--transition);position:relative}
.pricing-card.featured{border-color:var(--color-accent);transform:scale(1.02)}
.pricing-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}
.pricing-card.featured:hover{transform:scale(1.02) translateY(-4px)}
.pricing-price{font-family:var(--font-display);font-size:2rem;color:var(--color-deep);margin:var(--space-sm) 0}
.pricing-price small{font-size:0.9rem;color:var(--color-muted)}
.pricing-features li{padding:0.35rem 0;font-size:0.9rem;color:var(--color-muted);display:flex;align-items:center;gap:0.4rem}
.pricing-features i{color:var(--color-accent)}

.site-footer{background:var(--color-ink);color:rgba(255,255,255,0.75);padding-block:var(--space-xl)}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:var(--space-lg)}
.footer-col h4{color:var(--color-white);font-size:0.88rem;margin-bottom:var(--space-sm);letter-spacing:0.08em;text-transform:uppercase}
.footer-col a{display:block;color:rgba(255,255,255,0.65);font-size:0.86rem;padding:0.2rem 0;transition:color var(--transition)}
.footer-col a:hover{color:var(--color-white)}
.footer-brand{font-family:var(--font-display);color:var(--color-white);font-size:1.1rem;margin-bottom:var(--space-sm)}
.footer-legal{font-size:0.8rem;color:rgba(255,255,255,0.5);margin-top:var(--space-sm)}
.footer-bottom{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,0.1);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-sm);font-size:0.82rem}

.page-hero{padding-block:var(--space-xl) var(--space-lg);background:var(--color-white);position:relative}
.page-hero::after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:40px;height:2px;background:var(--color-accent);opacity:0.35}
.page-hero h1{margin-bottom:var(--space-xs)}
.page-hero p{color:var(--color-muted);max-width:54ch}

.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}
.contact-info-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-soft)}
.contact-info-item{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md);align-items:flex-start}
.contact-info-item i{font-size:1.2rem;color:var(--color-accent);margin-top:0.15rem}
.map-wrap{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft);margin-top:var(--space-md)}
.map-wrap iframe{width:100%;height:280px;border:0}

.form-group{margin-bottom:var(--space-md)}
.form-group label{display:block;font-size:0.88rem;margin-bottom:0.35rem;color:var(--color-deep)}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:0.75rem 1rem;border:1.5px solid rgba(44,44,44,0.12);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:0.95rem;background:var(--color-white);transition:border-color var(--transition),box-shadow var(--transition)}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(133,57,83,0.12)}
.form-group textarea{min-height:140px;resize:vertical}
.form-group.has-error input,.form-group.has-error textarea{border-color:#c44}
.form-error{font-size:0.8rem;color:#c44;margin-top:0.25rem;display:none}
.form-group.has-error .form-error{display:block}
.checkbox-group{display:flex;align-items:flex-start;gap:0.6rem}
.checkbox-group input{margin-top:0.25rem;accent-color:var(--color-deep)}
.form-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-soft)}

.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}
.team-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-md);text-align:center;transition:transform var(--transition),box-shadow var(--transition)}
.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.team-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--color-accent),var(--color-deep));margin:0 auto var(--space-sm);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-family:var(--font-display);font-size:1.4rem}
.team-role{font-size:0.82rem;color:var(--color-accent);margin-bottom:var(--space-xs)}

.clients-showcase{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}
.client-story{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-soft);transition:box-shadow var(--transition)}
.client-story:hover{box-shadow:var(--shadow-hover)}
.client-story:nth-child(even){margin-top:var(--space-lg)}
.client-tag{display:inline-block;font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}

.legal-content{max-width:800px;margin-inline:auto}
.legal-content h2{margin-top:var(--space-lg);margin-bottom:var(--space-sm);font-size:1.3rem}
.legal-content h3{margin-top:var(--space-md);margin-bottom:var(--space-xs);font-size:1.1rem}
.legal-content p,.legal-content li{font-size:0.95rem;color:var(--color-muted)}
.legal-content ul,.legal-content ol{padding-left:1.25rem;margin-bottom:var(--space-sm)}
.legal-content li{margin-bottom:0.35rem}

.thankyou-wrap{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-xl)}
.thankyou-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-soft);max-width:520px;animation:fadeSlide 0.6s ease}
.thankyou-card i{font-size:3rem;color:var(--color-accent);margin-bottom:var(--space-md)}

.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:var(--color-white);box-shadow:0 -8px 32px rgba(44,44,44,0.12);padding:var(--space-md);transform:translateY(100%);transition:transform 0.5s ease}
.cookie-banner.visible{transform:translateY(0)}
.cookie-inner{max-width:1140px;margin-inline:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md)}
.cookie-text{flex:1;min-width:260px;font-size:0.88rem;color:var(--color-muted)}
.cookie-actions{display:flex;flex-wrap:wrap;gap:0.5rem}
.cookie-actions .btn{padding:0.6rem 1.2rem;font-size:0.85rem}
.btn-ghost{background:transparent;color:var(--color-ink);border:1.5px solid rgba(44,44,44,0.15)}
.btn-ghost:hover{border-color:var(--color-deep);color:var(--color-deep)}

.cookie-modal{position:fixed;inset:0;z-index:1100;background:rgba(44,44,44,0.45);display:flex;align-items:center;justify-content:center;padding:var(--space-md);opacity:0;visibility:hidden;transition:opacity var(--transition),visibility var(--transition)}
.cookie-modal.open{opacity:1;visibility:visible}
.cookie-modal-panel{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-lg);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;animation:fadeSlide 0.35s ease}
.cookie-option{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0;border-bottom:1px solid rgba(44,44,44,0.06)}
.cookie-option label{font-size:0.9rem;color:var(--color-deep)}
.toggle{position:relative;width:44px;height:24px}
.toggle input{opacity:0;width:0;height:0}
.toggle span{position:absolute;inset:0;background:rgba(44,44,44,0.15);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--transition)}
.toggle span::after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:var(--color-white);border-radius:50%;transition:transform var(--transition)}
.toggle input:checked+span{background:var(--color-deep)}
.toggle input:checked+span::after{transform:translateX(20px)}
.toggle input:disabled+span{opacity:0.5;cursor:not-allowed}

.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.65s ease,transform 0.65s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.stagger-children .reveal:nth-child(2){transition-delay:0.1s}
.stagger-children .reveal:nth-child(3){transition-delay:0.2s}
.stagger-children .reveal:nth-child(4){transition-delay:0.3s}

@keyframes floatSoft{0%,100%{transform:translateX(0) translateY(0)}50%{transform:translateX(0) translateY(-8px)}}
@keyframes fadeSlide{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes linePulse{0%,100%{opacity:0.2;height:60px}50%{opacity:0.5;height:90px}}

@media(max-width:960px){
  .hero-split{grid-template-columns:1fr;min-height:auto}
  .hero-visual{min-height:38vh;order:-1}
  .philosophy,.flow-grid,.voices,.contact-layout,.clients-showcase,.tab-content-grid,.info-panel-grid,.highlight-band{grid-template-columns:1fr}
  .pillars,.pricing-grid{grid-template-columns:1fr}
  .pillar-card:nth-child(2){transform:none}
  .features-asymmetric{grid-template-columns:1fr}
  .feature-tile{grid-column:1!important;grid-row:auto!important;margin-top:0!important}
  .team-grid{grid-template-columns:1fr 1fr}
  .counter-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .client-story:nth-child(even){margin-top:0}
  .routine-slots{grid-template-columns:1fr}
  .pricing-card.featured{transform:none}
}

@media(max-width:640px){
  .burger{display:block;position:absolute;right:4vw;top:1.2rem}
  .header-inner{position:relative;align-items:flex-start;padding-inline:4vw}
  .nav-pill{display:none;flex-direction:column;width:100%;border-radius:var(--radius-md)}
  .nav-pill.open{display:flex}
  .team-grid,.counter-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .hero-actions{flex-direction:column}
  .hero-actions .btn{width:100%;justify-content:center}
  .trust-grid{flex-direction:column;align-items:center}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.01ms!important}
  .reveal{opacity:1;transform:none}
}
