/* ═══════════════════════════════════════════════════════════════════
   AVENIR — EDITORIAL STATUS UPGRADE V2
   The booking interface and its behaviour remain from the source file.
   No scroll-reveal, word-by-word animation, magnetic buttons or tilt.
   ═══════════════════════════════════════════════════════════════════ */
:root{
  --av-ivory:#f4f0e8;
  --av-ivory-2:#ebe5da;
  --av-ink:#14231f;
  --av-ink-2:#21362f;
  --av-forest:#0d2720;
  --av-forest-2:#17372e;
  --av-brass:#b59661;
  --av-brass-soft:#d9c6a2;
  --av-line:rgba(20,35,31,.14);
  --av-light-line:rgba(255,255,255,.17);
  --av-muted:#65716c;
  --av-serif:'Cormorant Garamond', Georgia, serif;
  --av-sans:'Manrope', Inter, system-ui, sans-serif;
  --av-max:1440px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.av-v2{
  margin:0;
  background:var(--av-ivory);
  color:var(--av-ink);
  font-family:var(--av-sans);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
body.av-v2 a{color:inherit;text-decoration:none}
body.av-v2 button,body.av-v2 input,body.av-v2 select,body.av-v2 textarea{font:inherit}
.av-container{width:min(calc(100% - 64px),var(--av-max));margin-inline:auto}
.av-demo{
  background:var(--av-forest);
  color:rgba(255,255,255,.72);
  border-bottom:1px solid var(--av-light-line);
  font:500 10px/1.2 'JetBrains Mono',monospace;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.av-demo .av-container{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.av-demo strong{color:var(--av-brass-soft);font-weight:500}
.av-header{
  position:sticky;top:0;z-index:50;
  background:rgba(244,240,232,.92);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--av-line);
}
.av-navrow{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.av-brand{display:flex;align-items:center;gap:13px;min-width:max-content}
.av-mark{width:39px;height:43px;display:grid;place-items:center;color:var(--av-forest)}
.av-mark svg{display:block;width:39px;height:43px}
.av-brandcopy{display:grid;line-height:1.08}
.av-brandcopy b{font:500 20px/1 var(--av-serif);letter-spacing:.03em}
.av-brandcopy span{margin-top:5px;color:var(--av-muted);font:500 9px/1 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase}
.av-nav{display:flex;align-items:center;gap:27px;margin-left:auto}
.av-nav a{position:relative;color:#31423c;font-size:13px;font-weight:500}
.av-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--av-brass);transition:right .25s ease}
.av-nav a:hover:after{right:0}
.av-contact{display:flex;align-items:center;gap:11px}
.av-phone{font-size:13px;font-weight:600;white-space:nowrap}
.av-cta,.av-ghost{
  min-height:44px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.av-cta{background:var(--av-forest);color:#fff}
body.av-v2 a.av-cta{color:#fff}
.av-cta:hover{background:var(--av-ink-2);transform:translateY(-1px)}
.av-ghost{border-color:rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.04)}
.av-ghost:hover{background:rgba(255,255,255,.1)}
.av-menu-btn{display:none;width:44px;height:44px;border:1px solid var(--av-line);border-radius:50%;background:transparent;place-items:center}
.av-menu-btn span,.av-menu-btn span:before,.av-menu-btn span:after{width:17px;height:1px;background:var(--av-ink);display:block;content:'';position:relative}
.av-menu-btn span:before{position:absolute;top:-5px}.av-menu-btn span:after{position:absolute;top:5px}

/* Hero */
.av-hero{position:relative;min-height:760px;background:var(--hero-photo) center 43%/cover no-repeat;overflow:hidden}
.av-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,30,24,.94) 0%,rgba(8,30,24,.82) 36%,rgba(8,30,24,.32) 68%,rgba(8,30,24,.12) 100%)}
.av-hero:after{content:'';position:absolute;inset:auto 0 0;height:170px;background:linear-gradient(transparent,rgba(8,30,24,.42))}
.av-hero-inner{position:relative;z-index:2;min-height:760px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.55fr);align-items:end;gap:80px;padding-block:96px 66px}
.av-hero-copy{max-width:780px;color:#fff;align-self:center}
.av-kicker{display:flex;align-items:center;gap:15px;color:var(--av-brass-soft);font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.18em;text-transform:uppercase}
.av-kicker:before{content:'';width:38px;height:1px;background:currentColor}
.av-hero h1{margin:24px 0 22px;font:500 clamp(4.7rem,7.3vw,8.2rem)/.82 var(--av-serif);letter-spacing:-.045em;max-width:900px;text-wrap:balance}
.av-hero h1 em{font-style:italic;color:var(--av-brass-soft);font-weight:400}
.av-hero-lead{max-width:660px;margin:0;color:rgba(255,255,255,.75);font-size:17px;line-height:1.75}
.av-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.av-hero .av-cta{background:var(--av-brass);color:var(--av-forest);padding-inline:24px}
body.av-v2 .av-hero a.av-cta,body.av-v2 .av-closing a.av-cta{color:var(--av-forest)}
.av-hero .av-cta:hover{background:#cfb581}
.av-hero-panel{align-self:end;color:#fff;border-top:1px solid rgba(255,255,255,.3);padding-top:22px}
.av-panel-label{color:var(--av-brass-soft);font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase}
.av-hero-panel h2{margin:14px 0 8px;font:500 31px/1.05 var(--av-serif)}
.av-hero-panel p{margin:0;color:rgba(255,255,255,.68);font-size:13px;line-height:1.65}
.av-panel-data{margin-top:23px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.18)}
.av-panel-data div{padding:16px 0 0}
.av-panel-data div+div{padding-left:18px;border-left:1px solid rgba(255,255,255,.18)}
.av-panel-data b{display:block;font:500 22px/1.1 var(--av-serif)}
.av-panel-data span{display:block;margin-top:6px;color:rgba(255,255,255,.55);font-size:11px}
.av-hero-rail{position:relative;z-index:3;margin-top:-1px;background:var(--av-forest);color:#fff;border-top:1px solid rgba(255,255,255,.17)}
.av-rail-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.av-rail-item{min-height:112px;padding:27px 34px 25px;border-right:1px solid rgba(255,255,255,.13)}
.av-rail-item:first-child{border-left:1px solid rgba(255,255,255,.13)}
.av-rail-item small{display:block;color:var(--av-brass-soft);font:500 9px/1 'JetBrains Mono',monospace;letter-spacing:.15em;text-transform:uppercase}
.av-rail-item b{display:block;margin-top:12px;font:500 21px/1.1 var(--av-serif)}

/* Shared sections */
.av-section{padding:124px 0}
.av-section + .av-section{border-top:1px solid rgba(20,35,31,.08)}
.av-section-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(360px,.55fr);gap:90px;align-items:end;margin-bottom:58px}
.av-section-head h2{margin:14px 0 0;font:500 clamp(3rem,5vw,5.5rem)/.92 var(--av-serif);letter-spacing:-.035em;text-wrap:balance}
.av-section-head p{margin:0;color:var(--av-muted);font-size:15px;line-height:1.85}
.av-num{color:var(--av-brass);font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.15em;text-transform:uppercase}

/* Services: editorial list, not cards */
.av-services{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--av-line);border-bottom:1px solid var(--av-line)}
.av-service{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:34px 28px 34px 0;border-bottom:1px solid var(--av-line)}
.av-service:nth-child(odd){padding-right:42px;border-right:1px solid var(--av-line)}
.av-service:nth-child(even){padding-left:42px}
.av-service:nth-last-child(-n+2){border-bottom:0}
.av-service-index{padding-top:5px;color:var(--av-brass);font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.15em}
.av-service h3{margin:0;font:500 29px/1.05 var(--av-serif)}
.av-service p{margin:11px 0 15px;color:var(--av-muted);font-size:13px;line-height:1.75}
.av-service-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px;color:#42514c;font-size:11px;font-weight:600}
.av-service-foot span+span:before{content:'·';margin-right:14px;color:var(--av-brass)}

/* Process: elegant dark field */
.av-process{background:var(--av-forest);color:#fff;padding:132px 0;overflow:hidden;position:relative}
.av-process:after{content:'';position:absolute;width:620px;height:620px;border:1px solid rgba(181,150,97,.16);border-radius:50%;right:-250px;top:-230px}
.av-process-grid{position:relative;z-index:1;display:grid;grid-template-columns:.82fr 1.18fr;gap:110px}
.av-process-copy{align-self:start;position:sticky;top:130px}
.av-process h2{margin:17px 0 25px;font:500 clamp(3.8rem,5.6vw,6.2rem)/.88 var(--av-serif);letter-spacing:-.04em}
.av-process-copy p{max-width:530px;color:rgba(255,255,255,.63);font-size:15px;line-height:1.85}
.av-process-list{border-top:1px solid var(--av-light-line)}
.av-step{display:grid;grid-template-columns:64px 1fr 130px;gap:18px;align-items:start;padding:30px 0;border-bottom:1px solid var(--av-light-line)}
.av-step span:first-child{color:var(--av-brass-soft);font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.13em}
.av-step h3{margin:0 0 8px;font:500 27px/1 var(--av-serif)}
.av-step p{margin:0;color:rgba(255,255,255,.62);font-size:13px;line-height:1.7}
.av-step-time{color:rgba(255,255,255,.42);font-size:11px;text-align:right;white-space:nowrap}

/* Booking zone — the original booking section is placed unchanged here */
.av-booking-zone{padding:124px 0;background:#f8f5ef;border-bottom:1px solid var(--av-line)}
.av-booking-zone > .shell{max-width:1340px}

/* Standard */
.av-standard{padding:132px 0;background:#e8e0d4}
.av-standard-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:105px;align-items:start}
.av-standard h2{margin:16px 0 24px;font:500 clamp(3.4rem,5vw,5.8rem)/.9 var(--av-serif);letter-spacing:-.04em}
.av-standard-intro{max-width:570px;color:#5d6964;font-size:15px;line-height:1.85}
.av-standard-list{border-top:1px solid rgba(20,35,31,.2)}
.av-standard-item{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:27px 0;border-bottom:1px solid rgba(20,35,31,.2)}
.av-standard-item b{color:var(--av-brass);font:500 10px/1 'JetBrains Mono',monospace;letter-spacing:.12em}
.av-standard-item h3{margin:0;font:500 27px/1.05 var(--av-serif)}
.av-standard-item p{margin:8px 0 0;color:#66716d;font-size:13px;line-height:1.7}

/* Doctors */
.av-doctors{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.av-doctor{min-width:0}
.av-doctor-photo{position:relative;aspect-ratio:.79;background-position:center 12%;background-size:cover;overflow:hidden;border-radius:22px}
.av-doctor-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(9,28,23,.58))}
.av-doctor-label{position:absolute;left:16px;bottom:15px;z-index:2;color:#fff;font:500 9px/1 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase}
.av-doctor h3{margin:18px 0 4px;font:500 28px/1.05 var(--av-serif)}
.av-doctor p{margin:0;color:var(--av-muted);font-size:12px;line-height:1.65}
.av-doctor-link{display:inline-flex;margin-top:13px;padding-bottom:4px;border-bottom:1px solid var(--av-brass);font-size:11px;font-weight:600}

/* Atmosphere */
.av-atmosphere{padding:132px 0;background:var(--av-forest);color:#fff}
.av-atmo-grid{display:grid;grid-template-columns:.62fr 1.38fr;gap:62px;align-items:stretch}
.av-atmo-copy{display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:15px}
.av-atmo-copy h2{margin:17px 0 24px;font:500 clamp(3.5rem,5.1vw,5.8rem)/.9 var(--av-serif);letter-spacing:-.04em}
.av-atmo-copy p{max-width:510px;color:rgba(255,255,255,.62);font-size:14px;line-height:1.8}
.av-gallery{display:grid;grid-template-columns:1.08fr .92fr;grid-template-rows:1fr 1fr;gap:14px;min-height:670px}
.av-photo{position:relative;overflow:hidden;border-radius:22px;background-size:cover;background-position:center}
.av-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(7,26,21,.75))}
.av-photo-a{grid-row:1/3;background-image:var(--gallery-photo-1)}
.av-photo-b{background-image:var(--gallery-photo-2)}
.av-photo-c{background-image:var(--gallery-photo-3)}
.av-photo-caption{position:absolute;z-index:2;left:22px;right:22px;bottom:20px}
.av-photo-caption small{color:var(--av-brass-soft);font:500 9px/1 'JetBrains Mono',monospace;letter-spacing:.15em;text-transform:uppercase}
.av-photo-caption h3{margin:8px 0 0;font:500 24px/1.08 var(--av-serif)}

/* Care formats */
.av-formats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.av-format{min-height:310px;padding:34px;border:1px solid var(--av-line);border-radius:22px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.28)}
.av-format svg{width:30px;height:30px;stroke:var(--av-brass);fill:none;stroke-width:1.4}
.av-format h3{margin:36px 0 10px;font:500 31px/1.03 var(--av-serif)}
.av-format p{margin:0;color:var(--av-muted);font-size:13px;line-height:1.75}
.av-format small{margin-top:32px;padding-top:15px;border-top:1px solid var(--av-line);color:#55615d;font:500 9px/1 'JetBrains Mono',monospace;letter-spacing:.13em;text-transform:uppercase}

/* FAQ */
.av-faq-grid{display:grid;grid-template-columns:.66fr 1.34fr;gap:100px;align-items:start}
.av-faq-sticky{position:sticky;top:130px}
.av-faq-sticky h2{margin:16px 0 22px;font:500 clamp(3.4rem,5vw,5.7rem)/.9 var(--av-serif)}
.av-faq-sticky p{color:var(--av-muted);font-size:14px;line-height:1.8}
.av-faq-list{border-top:1px solid var(--av-line)}
.av-faq-list details{border-bottom:1px solid var(--av-line)}
.av-faq-list summary{list-style:none;cursor:pointer;padding:26px 44px 26px 0;position:relative;font:500 24px/1.15 var(--av-serif)}
.av-faq-list summary::-webkit-details-marker{display:none}
.av-faq-list summary:before,.av-faq-list summary:after{content:'';position:absolute;right:7px;top:50%;width:15px;height:1px;background:var(--av-ink);transition:transform .2s ease}
.av-faq-list summary:after{transform:rotate(90deg)}
.av-faq-list details[open] summary:after{transform:rotate(0)}
.av-faq-answer{padding:0 55px 27px 0;color:var(--av-muted);font-size:13px;line-height:1.8}

/* Closing */
.av-closing{padding:42px 0 48px}
.av-closing-card{position:relative;min-height:560px;overflow:hidden;border-radius:30px;background:var(--hero-photo) center 54%/cover no-repeat;color:#fff;display:flex;align-items:flex-end}
.av-closing-card:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,27,21,.92),rgba(7,27,21,.7) 55%,rgba(7,27,21,.2))}
.av-closing-content{position:relative;z-index:1;width:min(720px,80%);padding:62px}
.av-closing h2{margin:17px 0 20px;font:500 clamp(3.5rem,5.3vw,6rem)/.88 var(--av-serif);letter-spacing:-.04em}
.av-closing p{max-width:610px;color:rgba(255,255,255,.7);font-size:15px;line-height:1.8}
.av-closing-contacts{display:flex;flex-wrap:wrap;gap:15px 30px;margin-top:28px;color:rgba(255,255,255,.82);font-size:13px}
.av-closing .av-cta{margin-top:28px;background:var(--av-brass);color:var(--av-forest)}
.av-footer{padding:32px 0 40px;color:#5f6b66}
.av-footer-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding-top:25px;border-top:1px solid var(--av-line);font-size:11px}
.av-footer a{border-bottom:1px solid rgba(20,35,31,.25)}

/* Booking table contrast safety only: text remains fully visible.
   No dimensions, structure, labels or interaction are altered. */
.av-booking-zone #booking .pick,
.av-booking-zone #booking .time-slot,
.av-booking-zone #booking .summary-row,
.av-booking-zone #booking .book-step{opacity:1!important}
.av-booking-zone #booking .pick b,
.av-booking-zone #booking .pick span,
.av-booking-zone #booking .pick em,
.av-booking-zone #booking .time-slot,
.av-booking-zone #booking .summary-row,
.av-booking-zone #booking .book-step{visibility:visible!important}

@media(max-width:1120px){
  .av-nav{display:none}.av-menu-btn{display:grid}.av-contact .av-phone{display:none}
  .av-header.is-open .av-nav{display:flex;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:flex-start;padding:24px 32px;background:var(--av-ivory);border-bottom:1px solid var(--av-line)}
  .av-hero-inner{grid-template-columns:1fr;gap:35px}.av-hero-panel{max-width:520px}
  .av-section-head,.av-standard-layout,.av-process-grid,.av-atmo-grid,.av-faq-grid{grid-template-columns:1fr;gap:55px}
  .av-process-copy,.av-faq-sticky{position:static}
  .av-doctors{grid-template-columns:repeat(2,1fr)}
  .av-process-list{max-width:none}.av-gallery{min-height:580px}
}
@media(max-width:760px){
  .av-container{width:min(calc(100% - 32px),var(--av-max))}
  .av-demo .av-container{min-height:42px;align-items:center}.av-demo span:last-child{display:none}
  .av-navrow{height:70px}.av-contact>.av-cta{display:none}
  .av-header.is-open .av-nav{top:70px;padding-inline:16px}
  .av-hero,.av-hero-inner{min-height:700px}.av-hero:before{background:linear-gradient(180deg,rgba(8,30,24,.55),rgba(8,30,24,.92) 67%,rgba(8,30,24,.98))}
  .av-hero-inner{padding-block:120px 40px;align-items:end}.av-hero-copy{align-self:end}
  .av-hero h1{font-size:clamp(3.35rem,12.7vw,4.35rem);line-height:.9;margin-top:18px;max-width:100%;overflow-wrap:normal;word-break:normal;hyphens:auto}
  .av-hero-lead{font-size:14px;line-height:1.72}.av-hero-panel{display:none}
  .av-rail-grid{grid-template-columns:1fr}.av-rail-item{min-height:auto;padding:20px 16px;border-left:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
  .av-section{padding:88px 0}.av-section-head{margin-bottom:38px;gap:28px}.av-section-head h2{font-size:clamp(2.8rem,13vw,4.1rem)}
  .av-services{grid-template-columns:1fr}.av-service,.av-service:nth-child(odd),.av-service:nth-child(even){padding:27px 0;border-right:0;border-bottom:1px solid var(--av-line)}.av-service:last-child{border-bottom:0}
  .av-process,.av-standard,.av-atmosphere{padding:92px 0}.av-process h2,.av-standard h2,.av-atmo-copy h2,.av-faq-sticky h2{font-size:clamp(3rem,14vw,4.5rem)}
  .av-step{grid-template-columns:40px 1fr}.av-step-time{grid-column:2;text-align:left;margin-top:6px}
  .av-booking-zone{padding:88px 0}
  .av-doctors{grid-template-columns:1fr 1fr;gap:14px}.av-doctor h3{font-size:23px}.av-doctor p{font-size:11px}
  .av-gallery{grid-template-columns:1fr;grid-template-rows:420px 260px 260px;min-height:0}.av-photo-a{grid-row:auto}
  .av-formats{grid-template-columns:1fr}.av-format{min-height:250px}
  .av-closing{padding-top:16px}.av-closing-card{min-height:610px;border-radius:22px}.av-closing-content{width:100%;padding:34px 25px}.av-closing h2{font-size:clamp(3.2rem,15vw,4.7rem)}
  .av-footer-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .av-brandcopy b{font-size:18px}.av-mark{width:34px}.av-mark svg{width:34px}
  .av-doctors{grid-template-columns:1fr}.av-doctor-photo{aspect-ratio:1.05;background-position:center 17%}
  .av-kicker{font-size:9px}.av-hero-actions{display:grid}.av-hero-actions a{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.av-cta,.av-nav a:after,.av-faq-list summary:after{transition:none}}
