*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#17342e;background:#fff;line-height:1.6}a{color:inherit}.container{width:min(1180px,92%);margin:auto}.topbar{background:#183a34;color:#fff;font-size:.86rem}.topbar-inner{display:flex;justify-content:space-between;padding:8px 0}.site-header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:50;border-bottom:1px solid #e7ece9}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between}.site-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.site-brand img{width:54px;height:62px;object-fit:contain}.site-brand span{display:flex;flex-direction:column;line-height:1.15}.site-brand strong,.footer-name{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.site-brand small{color:#687972}.mainnav{display:flex;align-items:center;gap:24px}.mainnav>a{text-decoration:none;font-weight:600}.nav-cta,.btn{border-radius:999px;padding:13px 22px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer}.nav-cta,.btn-primary{background:#7eae20;color:#fff}.btn-light{background:#fff;color:#17342e}.language-switch{display:flex;border:1px solid #d9e1dd;border-radius:999px;padding:3px}.lang-btn{padding:5px 8px;border-radius:999px;text-decoration:none;font-weight:700;font-size:.78rem}.lang-btn.active{background:#7eae20;color:#fff}.nav-toggle{display:none}.hero{position:relative;min-height:680px;background:linear-gradient(90deg,rgba(8,38,33,.94),rgba(15,48,42,.7)),url('https://praxis-an-der-stadthalle.de/wp-content/uploads/2023/02/Praxis-2.jpeg') center/cover;color:#fff}.hero-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:52px;align-items:center;padding:90px 0}.eyebrow{display:block;color:#a9d64f;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.78rem;margin-bottom:12px}.hero h1,.section-heading h2,.contact-info h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,6vw,5.8rem);line-height:.98;margin:0 0 24px}.hero-copy>p{font-size:1.18rem;max-width:760px}.hero-actions{display:flex;gap:14px;margin:30px 0}.hero-meta{display:flex;gap:24px;flex-wrap:wrap}.appointment-card{background:rgba(255,255,255,.97);color:#17342e;border-radius:34px;padding:38px;box-shadow:0 25px 70px rgba(0,0,0,.22)}.appointment-card h2{font:700 2.4rem Georgia,"Times New Roman",serif;margin:5px 0 14px}.card-kicker{color:#7eae20;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.btn-doctolib{background:#1677d2;color:#fff;width:100%;margin:16px 0}.text-link{display:block;text-align:center;color:#1677d2;font-weight:700}.phone{font-size:1.7rem;color:#60851a;font-weight:700;text-decoration:none}.section{padding:88px 0}.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.notice{display:flex;gap:18px;padding:28px;border:1px solid #dae3de;border-radius:25px}.notice-info{background:#f1f7ec}.notice-warning{background:#fff7e8}.notice-current{background:#edf5fa}.notice-icon{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:grid;place-items:center;background:#7eae20;color:#fff;font-weight:700}.section-heading{max-width:760px;margin-bottom:45px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading h2,.contact-info h2{color:#17342e;font-size:clamp(2.7rem,5vw,4.8rem)}.section-heading p{color:#667770;font-size:1.1rem}.practice-section{background:#fbfaf7}.practice-journey{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:265px;gap:18px}.journey-card{margin:0;position:relative;overflow:hidden;border-radius:26px;background:#ddd}.journey-card.card-1{grid-row:span 2}.journey-card.card-7{grid-column:span 2}.journey-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.journey-card:hover img{transform:scale(1.04)}.journey-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(6,32,28,.85))}.journey-card figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:18px;color:#fff;display:flex;gap:12px;align-items:center}.journey-card figcaption span{font-size:.75rem;color:#bce36f}.journey-card figcaption strong{font-size:1.1rem}.why-section{background:#17342e;color:#fff}.why-section .section-heading h2,.why-section .section-heading p{color:#fff}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.why-grid article{position:relative;background:#fff;color:#17342e;padding:30px;border-radius:26px;min-height:260px}.why-number{position:absolute;right:20px;top:18px;color:#dce5e0;font-size:2rem;font-weight:700}.why-tooth{width:56px;height:56px;border-radius:50%;background:#eff6e5;display:grid;place-items:center}.why-tooth img{width:35px;height:42px;object-fit:contain}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{border:1px solid #e0e7e3;border-radius:24px;padding:26px;background:#fff;box-shadow:0 10px 30px rgba(20,48,40,.06)}.service-icon{width:48px;height:48px;border-radius:50%;background:#eef6e4;display:grid;place-items:center;margin-bottom:14px}.service-icon img{width:28px;height:34px;object-fit:contain}.technology{background:#f2f7ed}.tech-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.tech-copy h2{font:700 clamp(2.5rem,5vw,4rem) Georgia,"Times New Roman",serif;line-height:1.1}.tech-panel{background:#17342e;color:#fff;border-radius:32px;padding:42px;text-align:center}.scan-circle{width:180px;height:180px;margin:auto;border:2px solid #9ccb40;border-radius:50%;display:grid;place-items:center}.scan-circle span{font-size:3.5rem;font-weight:700}.scan-circle small{display:block}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.doctor-card{display:flex;gap:24px;padding:28px;border-radius:26px;background:#f7f6f2}.doctor-photo{width:110px;height:130px;border-radius:22px;background:#17342e;color:#fff;display:grid;place-items:center;font:700 2rem Georgia,"Times New Roman",serif;flex:0 0 110px}.role{color:#7eae20;font-weight:700}.contact-section{background:#fbfaf7}.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.contact-cards>div{background:#fff;padding:20px;border-radius:18px}.contact-cards span{display:block;color:#718079;font-size:.85rem}.directions{margin-top:28px}.hours-card{background:#17342e;color:#fff;padding:32px;border-radius:28px}.hours-row{display:grid;grid-template-columns:1fr auto;gap:5px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14)}.hours-row small{grid-column:1/-1;color:#c6d4cf}.form-map-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px}.contact-form{background:#fff;padding:34px;border-radius:28px}.contact-form h3{font:700 2rem Georgia,"Times New Roman",serif}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:block;font-weight:600;margin-bottom:16px}.contact-form input,.contact-form textarea{width:100%;margin-top:7px;border:1px solid #cad6d1;border-radius:13px;padding:13px;font:inherit}.checkbox{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important}.checkbox input{width:auto;margin-top:6px}.hp-field{position:absolute!important;left:-9999px!important}.alert{padding:14px;border-radius:12px;margin-bottom:18px}.alert.success{background:#eaf6df}.alert.error{background:#fde8e8}.route-card{position:relative;border-radius:28px;overflow:hidden;min-height:550px}.route-card>img{width:100%;height:100%;object-fit:cover}.route-overlay{position:absolute;left:25px;right:25px;bottom:25px;background:rgba(255,255,255,.95);border-radius:22px;padding:20px;display:grid;grid-template-columns:54px 1fr;gap:4px 14px}.route-overlay img{width:45px;height:55px;object-fit:contain;grid-row:span 3}.route-overlay strong,.route-overlay span,.route-overlay a{grid-column:2}.route-overlay a{color:#60851a;font-weight:700;text-decoration:none}footer{background:#102f29;color:#fff;padding:70px 0 110px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-logo{width:70px;height:85px;object-fit:contain;filter:brightness(0) invert(1)}footer small{color:#aabdb6}.mobile-quickbar{display:none}body[dir="rtl"] .journey-card figcaption{left:auto;right:22px}body[dir="rtl"] .route-overlay{grid-template-columns:1fr 54px}body[dir="rtl"] .route-overlay img{grid-column:2}body[dir="rtl"] .route-overlay strong,body[dir="rtl"] .route-overlay span,body[dir="rtl"] .route-overlay a{grid-column:1}
@media(max-width:1000px){.mainnav{position:absolute;top:88px;left:0;right:0;background:#fff;display:none;flex-direction:column;padding:24px}.mainnav.open{display:flex}.nav-toggle{display:block;border:0;background:none}.nav-toggle span{display:block;width:26px;height:2px;background:#17342e;margin:5px}.hero-content,.contact-layout,.form-map-grid,.tech-grid{grid-template-columns:1fr}.notice-grid,.why-grid{grid-template-columns:1fr 1fr}.services-grid{grid-template-columns:1fr 1fr}.practice-journey{grid-template-columns:1fr 1fr;grid-auto-rows:260px}.journey-card.card-1{grid-row:auto}.journey-card.card-7{grid-column:span 2}.footer-grid{grid-template-columns:1fr 1fr}.appointment-card{max-width:620px}.contact-cards{grid-template-columns:1fr}}
@media(max-width:680px){body{padding-bottom:74px}.topbar-inner span{display:none}.nav-wrap{height:72px}.site-brand img{width:42px;height:50px}.site-brand strong{font-size:1rem}.site-brand small{display:none}.mainnav{top:72px}.hero{min-height:auto}.hero-content{padding:58px 0}.hero h1{font-size:3.4rem}.hero-actions{flex-direction:column;align-items:stretch}.appointment-card{padding:26px}.section{padding:62px 0}.notice-grid,.why-grid,.services-grid,.team-grid,.field-row,.footer-grid{grid-template-columns:1fr}.practice-journey{grid-template-columns:1fr;grid-auto-rows:245px}.journey-card.card-7{grid-column:auto}.contact-info h2,.section-heading h2{font-size:2.8rem}.route-card{min-height:390px}.mobile-quickbar{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);left:0;right:0;bottom:0;height:72px;background:#fff;border-top:1px solid #dce4e0;z-index:100;padding-bottom:env(safe-area-inset-bottom)}.mobile-quickbar a{text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.78rem;font-weight:700}.mobile-quickbar span{font-size:1.2rem;color:#709d1f}footer{padding-bottom:90px}}

/* 3D-Scan und Videobereiche */
.tech-visual{background:#17342e;color:#fff;border-radius:32px;padding:42px;text-align:center;overflow:hidden;position:relative}.scan-stage{width:230px;height:230px;margin:0 auto 20px;position:relative;display:grid;place-items:center;perspective:800px}.scan-stage img{width:112px;height:145px;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(0,0,0,.35));animation:tooth3d 7s linear infinite;position:relative;z-index:2}.scan-stage>span{position:absolute;right:23px;bottom:25px;font-size:1.4rem;font-weight:800;color:#bce36f;z-index:3}.scan-rings,.scan-rings:before,.scan-rings:after{position:absolute;inset:14px;border:1px solid rgba(188,227,111,.45);border-radius:50%;content:"";animation:scanPulse 3s ease-in-out infinite}.scan-rings:before{inset:22px;animation-delay:.5s}.scan-rings:after{inset:45px;animation-delay:1s}.video-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:54px}.video-feature{background:#fff;border:1px solid #dce6e1;border-radius:30px;padding:28px;box-shadow:0 16px 45px rgba(20,48,40,.08)}.video-feature h3{font:700 clamp(1.7rem,3vw,2.35rem) Georgia,"Times New Roman",serif;margin:5px 0 12px}.video-feature p{color:#60736b}.video-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#0e2c27;margin-top:22px}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-feature small{display:block;color:#7a8983;margin-top:10px}.smart-grinder{background:#17342e;color:#fff}.smart-grinder p,.smart-grinder small{color:#c6d4cf}@keyframes tooth3d{0%{transform:rotateY(-24deg) rotateX(4deg)}50%{transform:rotateY(24deg) rotateX(-4deg)}100%{transform:rotateY(-24deg) rotateX(4deg)}}@keyframes scanPulse{0%,100%{transform:scale(.92);opacity:.3}50%{transform:scale(1.04);opacity:1}}
@media(max-width:900px){.video-feature-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.scan-stage img,.scan-rings,.scan-rings:before,.scan-rings:after{animation:none}}


/* Finale Leistungsstruktur */
.service-link{position:relative;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s,border-color .25s}.service-link:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(20,48,40,.12);border-color:#a9cc68}.service-more{position:absolute;right:22px;bottom:18px;color:#7eae20;font-size:1.25rem}.sleep-section{background:#102f35;color:#fff;overflow:hidden}.sleep-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:center}.sleep-copy h2,.implant-copy h2,.languages-layout h2{font:700 clamp(2.7rem,5vw,4.7rem) Georgia,"Times New Roman",serif;line-height:1.08;margin:0 0 22px}.sleep-copy h3,.implant-copy h3{font-size:1.25rem;margin-top:26px}.feature-list{padding-left:1.2em}.feature-list li{margin:10px 0}.sleep-visual{min-height:450px;border-radius:50% 50% 35% 35%;background:radial-gradient(circle at 50% 45%,#244e55,#102f35 65%);display:grid;place-items:center;position:relative;border:1px solid rgba(255,255,255,.12)}.moon-orbit{width:260px;height:260px;position:relative;display:grid;place-items:center}.moon{font-size:12rem;line-height:1;color:#bfe477;text-shadow:0 15px 50px rgba(169,214,79,.25)}.star{position:absolute;color:#fff}.star-a{top:18px;right:18px;font-size:2rem}.star-b{left:15px;bottom:45px;font-size:1.4rem}.sleep-label{position:absolute;bottom:40px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#a9d64f}.single-video{max-width:900px;margin:54px auto 0}.implant-section{background:#fff}.implant-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:center}.implant-visual{min-height:470px;border-radius:38px;background:linear-gradient(145deg,#eef6e4,#f8faf6);display:grid;place-items:center;position:relative;overflow:hidden}.implant-visual:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;border:1px solid #c9dda4}.implant-visual img{max-width:64%;max-height:360px;object-fit:contain;position:relative;filter:drop-shadow(0 25px 28px rgba(20,48,40,.2))}.implant-visual span{position:absolute;bottom:28px;font-weight:800;color:#60851a;letter-spacing:.08em}.implant-video{margin-top:55px;background:#17342e;color:#fff}.implant-video p,.implant-video small{color:#c6d4cf}.languages-section{background:#f1f7ec}.languages-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.language-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.language-card{background:#fff;border:1px solid #dbe7d2;border-radius:22px;padding:22px;text-decoration:none;display:flex;align-items:center;justify-content:space-between;transition:.25s}.language-card:hover{transform:translateY(-3px);border-color:#8dbb38}.language-card strong{font-size:1.05rem}.language-card span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#17342e;color:#fff;font-weight:800;font-size:.78rem}body[dir="rtl"] .feature-list{padding-left:0;padding-right:1.2em}
@media(max-width:900px){.sleep-layout,.implant-layout,.languages-layout{grid-template-columns:1fr}.sleep-visual{min-height:350px}.implant-visual{min-height:380px}}
@media(max-width:580px){.language-card-grid{grid-template-columns:1fr}.sleep-visual{min-height:300px}.moon{font-size:9rem}.mainnav{max-height:calc(100vh - 72px);overflow:auto}}

/* Final refinements: Implantology / dentists separation */
.implant-section{
  position:relative;
  padding-bottom:120px;
}
.implant-section::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:42px;
  width:min(1120px,calc(100% - 40px));
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,#bfd49c 18%,#7eae20 50%,#bfd49c 82%,transparent);
}
.team-section{
  background:linear-gradient(180deg,#f2f7ed 0%,#ffffff 78%);
  border-top:10px solid #eef5e8;
  padding-top:110px;
}
.team-section .section-heading{
  max-width:760px;
  margin-bottom:42px;
}
.implant-visual{
  min-height:500px;
  padding:42px;
}
.implant-visual img{
  width:min(76%,410px);
  max-width:none;
  max-height:420px;
  object-fit:contain;
}
@media(max-width:700px){
  .implant-section{padding-bottom:90px}
  .team-section{padding-top:82px}
  .implant-visual{min-height:390px;padding:26px}
  .implant-visual img{width:min(82%,320px)}
}


/* Animated sleep-tooth visual */
.sleep-visual{
  min-height:470px;
  border-radius:42px;
  background:
    radial-gradient(circle at 50% 48%,rgba(169,214,79,.13),transparent 34%),
    radial-gradient(circle at 50% 45%,#244e55,#102f35 68%);
  overflow:hidden;
  isolation:isolate;
}
.sleep-motion{
  width:min(390px,82%);
  aspect-ratio:1;
  position:relative;
  display:grid;
  place-items:center;
  perspective:900px;
}
.sleep-tooth-image{
  width:74%;
  height:74%;
  object-fit:contain;
  position:relative;
  z-index:4;
  filter:drop-shadow(0 24px 32px rgba(0,0,0,.30));
  animation:sleepToothFloat 7s ease-in-out infinite;
  transform-origin:50% 58%;
}
.sleep-rings,
.sleep-rings::before,
.sleep-rings::after{
  content:"";
  position:absolute;
  inset:10%;
  border-radius:50%;
  border:1px solid rgba(188,227,111,.32);
  animation:sleepRingPulse 4.6s ease-in-out infinite;
}
.sleep-rings::before{inset:13%;animation-delay:.75s}
.sleep-rings::after{inset:27%;animation-delay:1.5s}
.sleep-orbit{
  position:absolute;
  border-radius:50%;
  border:1px dashed rgba(255,255,255,.18);
  z-index:1;
}
.sleep-orbit::after{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#bce36f;
  box-shadow:0 0 18px rgba(188,227,111,.9);
  top:-5px;
  left:50%;
}
.sleep-orbit-a{
  width:88%;
  height:58%;
  animation:sleepOrbit 13s linear infinite;
}
.sleep-orbit-b{
  width:60%;
  height:88%;
  animation:sleepOrbitReverse 17s linear infinite;
}
@keyframes sleepToothFloat{
  0%,100%{transform:translateY(7px) rotateY(-7deg) rotateZ(-1deg)}
  50%{transform:translateY(-12px) rotateY(8deg) rotateZ(1.5deg)}
}
@keyframes sleepRingPulse{
  0%,100%{transform:scale(.88);opacity:.18}
  50%{transform:scale(1.07);opacity:.72}
}
@keyframes sleepOrbit{
  to{transform:rotate(360deg)}
}
@keyframes sleepOrbitReverse{
  to{transform:rotate(-360deg)}
}

/* Animated implant visual */
.implant-visual{
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 45%,rgba(126,174,32,.16),transparent 32%),
    linear-gradient(145deg,#eef6e4,#f8faf6);
}
.implant-visual:before{
  animation:implantHalo 4.5s ease-in-out infinite;
  z-index:1;
}
.implant-rings,
.implant-rings::before,
.implant-rings::after{
  content:"";
  position:absolute;
  inset:14%;
  border:1px solid rgba(126,174,32,.28);
  border-radius:50%;
  z-index:1;
  animation:implantRingPulse 4s ease-in-out infinite;
}
.implant-rings::before{inset:15%;animation-delay:.65s}
.implant-rings::after{inset:30%;animation-delay:1.3s}
.implant-orbit{
  position:absolute;
  border:1px dashed rgba(96,133,26,.26);
  border-radius:50%;
  z-index:1;
}
.implant-orbit::after{
  content:"";
  position:absolute;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#7eae20;
  box-shadow:0 0 16px rgba(126,174,32,.7);
  top:-5px;
  left:50%;
}
.implant-orbit-a{
  width:78%;
  height:48%;
  animation:implantOrbit 12s linear infinite;
}
.implant-orbit-b{
  width:48%;
  height:78%;
  animation:implantOrbitReverse 16s linear infinite;
}
.implant-visual img{
  z-index:4;
  animation:implantTooth3d 7.5s ease-in-out infinite;
  transform-origin:50% 58%;
}
@keyframes implantTooth3d{
  0%,100%{transform:translateY(8px) rotateY(-10deg) rotateX(2deg)}
  50%{transform:translateY(-12px) rotateY(11deg) rotateX(-2deg)}
}
@keyframes implantRingPulse{
  0%,100%{transform:scale(.86);opacity:.16}
  50%{transform:scale(1.06);opacity:.64}
}
@keyframes implantHalo{
  0%,100%{transform:scale(.92);opacity:.45}
  50%{transform:scale(1.07);opacity:.9}
}
@keyframes implantOrbit{to{transform:rotate(360deg)}}
@keyframes implantOrbitReverse{to{transform:rotate(-360deg)}}

@media(max-width:700px){
  .sleep-visual{min-height:370px}
  .sleep-motion{width:min(330px,88%)}
  .sleep-tooth-image{width:78%;height:78%}
}

/* Respect reduced-motion preferences */
@media(prefers-reduced-motion:reduce){
  .sleep-tooth-image,.sleep-rings,.sleep-rings::before,.sleep-rings::after,
  .sleep-orbit-a,.sleep-orbit-b,.implant-visual:before,.implant-rings,
  .implant-rings::before,.implant-rings::after,.implant-orbit-a,
  .implant-orbit-b,.implant-visual img{
    animation:none!important;
  }
}

/* Privacy, performance and mobile action enhancements */
.cookie-banner{position:fixed;z-index:200;left:18px;right:18px;bottom:18px;background:#fff;border:1px solid #dce6e1;border-radius:22px;padding:20px;box-shadow:0 20px 70px rgba(0,0,0,.2);display:flex;align-items:center;justify-content:space-between;gap:22px}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:.3rem 0 0}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-dialog{border:0;border-radius:24px;padding:0;max-width:620px;width:calc(100% - 30px);box-shadow:0 25px 100px rgba(0,0,0,.35)}.cookie-dialog::backdrop{background:rgba(7,30,26,.7)}.cookie-dialog form{padding:30px}.dialog-close{float:right;border:0;background:transparent;font-size:2rem}.consent-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid #e3ebe7}.consent-row span{display:flex;flex-direction:column}.consent-row small{color:#687972}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.media-consent-placeholder{position:absolute;inset:0;z-index:3;background:linear-gradient(145deg,#17342e,#274f48);color:#fff;display:grid;place-content:center;text-align:center;padding:25px}.video-frame{isolation:isolate}.consent-embed:not([src]){visibility:hidden}.notice-current.is-active{border-color:#7eae20;box-shadow:0 0 0 3px rgba(126,174,32,.14)}.quick-whatsapp{background:#1f9d58!important;color:#fff!important}.hp-field{position:absolute!important;left:-10000px!important}.open-cookie-settings{cursor:pointer}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;padding:12px}.site-header{contain:layout paint}.journey-card img{content-visibility:auto}.service-card,.why-grid article{content-visibility:auto;contain-intrinsic-size:250px}.mobile-quickbar a{min-height:48px}
@media(max-width:760px){.cookie-banner{display:block}.cookie-actions{margin-top:14px}.cookie-actions .btn{flex:1}.mobile-quickbar{grid-template-columns:repeat(4,1fr)}.mobile-quickbar a{font-size:.72rem;padding:9px 3px}}


/* Final header layout */
.topbar{
  background:#173a34;
  color:#fff;
  font-size:.9rem;
}
.topbar-inner{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:6px 0;
}
.topbar-phone{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#fff;
  text-decoration:none;
  white-space:nowrap;
}
.topbar-phone span{
  color:#bce36f;
  font-size:1rem;
}
.topbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:22px;
}
.topbar-appointment{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 15px;
  border-radius:999px;
  color:#fff;
  background:#7eae20;
  text-decoration:none;
  font-weight:750;
  white-space:nowrap;
  transition:transform .2s ease,background .2s ease;
}
.topbar-appointment:hover{
  background:#91bf31;
  transform:translateY(-1px);
}
.topbar-languages{
  display:flex;
  align-items:center;
  gap:4px;
}
.language-globe{
  margin-inline-end:4px;
}
.top-lang{
  min-width:29px;
  padding:3px 6px;
  border-radius:999px;
  color:#dce9e4;
  text-align:center;
  text-decoration:none;
  font-size:.76rem;
  font-weight:750;
}
.top-lang:hover,
.top-lang.active{
  color:#17342e;
  background:#fff;
}
.mainnav{
  gap:30px;
}
.mainnav>a{
  position:relative;
  padding:30px 0;
  white-space:nowrap;
}
.mainnav>a::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:22px;
  height:2px;
  border-radius:2px;
  background:#7eae20;
  transition:right .22s ease;
}
.mainnav>a:hover::after{
  right:0;
}
.site-header{
  top:0;
}

@media(max-width:1000px){
  .topbar-inner{
    gap:12px;
  }
  .topbar-actions{
    gap:10px;
  }
  .mainnav{
    top:88px;
    align-items:stretch;
    gap:0;
    border-top:1px solid #e4ebe7;
    box-shadow:0 18px 35px rgba(16,47,41,.12);
  }
  .mainnav>a{
    padding:12px 4px;
  }
  .mainnav>a::after{
    display:none;
  }
}

@media(max-width:760px){
  .topbar-inner{
    min-height:52px;
  }
  .topbar-phone strong{
    font-size:.84rem;
  }
  .topbar-appointment{
    padding:6px 10px;
    font-size:.78rem;
  }
  .topbar-languages{
    gap:1px;
  }
  .language-globe{
    display:none;
  }
  .top-lang{
    min-width:25px;
    padding:3px 4px;
    font-size:.69rem;
  }
}

@media(max-width:520px){
  .topbar-inner{
    flex-wrap:wrap;
    justify-content:center;
    gap:5px 12px;
    padding:7px 0;
  }
  .topbar-phone{
    width:100%;
    justify-content:center;
  }
  .topbar-actions{
    width:100%;
    justify-content:center;
  }
  .site-header{
    position:sticky;
  }
}


/* Final CI and RTL corrections */
.phone-ltr{direction:ltr!important;unicode-bidi:isolate!important;display:inline-block}
.entrance-note{margin-top:18px;padding:15px 18px;border-left:4px solid #91bd25;background:#f1f7e8;border-radius:10px;color:#173a34}
[dir="rtl"] .entrance-note{border-left:0;border-right:4px solid #91bd25}
.ci-hologram{position:relative;isolation:isolate;overflow:hidden}
.ci-hologram::before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,rgba(145,189,37,.22),rgba(145,189,37,.07) 35%,transparent 68%);filter:blur(7px);animation:ciPulse 3.8s ease-in-out infinite;z-index:-1}
.ci-hologram::after{content:"";position:absolute;left:12%;right:12%;height:2px;top:15%;background:linear-gradient(90deg,transparent,rgba(175,229,65,.9),transparent);box-shadow:0 0 14px rgba(145,189,37,.75);animation:ciScan 4s linear infinite;pointer-events:none}
.ci-hologram img{filter:drop-shadow(0 0 10px rgba(145,189,37,.42)) drop-shadow(0 0 25px rgba(145,189,37,.18));animation:ciFloat 5s ease-in-out infinite;transform-origin:center}
.scan-stage img{opacity:.9}
@keyframes ciPulse{0%,100%{transform:scale(.94);opacity:.55}50%{transform:scale(1.06);opacity:1}}
@keyframes ciScan{0%{top:12%;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:88%;opacity:0}}
@keyframes ciFloat{0%,100%{transform:translateY(-5px) rotateY(-4deg)}50%{transform:translateY(7px) rotateY(5deg)}}
@media(prefers-reduced-motion:reduce){.ci-hologram::before,.ci-hologram::after,.ci-hologram img{animation:none!important}}

/* Service detail pages */
.service-page-hero{padding:92px 0 70px;background:linear-gradient(135deg,#123932,#1d5047);color:#fff}
.service-page-hero .eyebrow{color:#b7e34a}.service-page-hero h1{max-width:850px;margin:.3em 0;font-size:clamp(2.4rem,6vw,5rem)}
.service-page-main{padding:72px 0}.service-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:55px;align-items:start}
.service-detail-copy h2,.service-detail-copy h3{color:#173a34}.service-detail-copy p,.service-detail-copy li{font-size:1.08rem;line-height:1.75}
.service-aside{background:#f2f7ec;border-radius:24px;padding:28px;position:sticky;top:105px}.service-aside img{width:90px;height:auto}.service-aside .btn{width:100%;text-align:center;margin-top:12px}
.faq-list details{border-top:1px solid #dbe5df;padding:18px 0}.faq-list summary{font-weight:750;cursor:pointer;color:#173a34}.related-services{padding:55px 0;background:#f6f8f5}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related-grid a{padding:18px;border-radius:14px;background:#fff;text-decoration:none;color:#173a34;font-weight:700}
@media(max-width:820px){.service-detail-grid{grid-template-columns:1fr}.service-aside{position:static}.related-grid{grid-template-columns:1fr}.service-page-hero{padding:70px 0 55px}}

.contact-form select{width:100%;margin-top:7px;border:1px solid #cad6d1;border-radius:13px;padding:13px;background:#fff;color:#17342e;font:inherit}.route-card{display:flex;flex-direction:column;background:#fff;min-height:0}.route-card>img{height:550px;flex:0 0 auto}.route-overlay{bottom:auto;top:395px}.route-directions{padding:32px 34px 36px;background:#fff}.route-directions h3{margin-top:0;font:700 1.45rem Georgia,"Times New Roman",serif}.route-directions p{margin:.75rem 0}.entrance-note{background:#eff6e5;border-left:4px solid #7eae20;border-radius:12px;padding:15px 17px}.legal-content{max-width:920px}.legal-content h1{font:700 clamp(2.8rem,6vw,4.8rem) Georgia,"Times New Roman",serif;line-height:1.05}.legal-content h2{margin-top:2.2rem;font:700 1.55rem Georgia,"Times New Roman",serif}.legal-content a{color:#60851a}.legal-note{margin-top:2rem;padding:18px;border-radius:15px;background:#fff7e8;border-left:4px solid #d69c27}.cookie-banner a{text-decoration:underline}.cookie-banner{max-width:1180px;margin:0 auto}.cookie-dialog a{color:#60851a}@media(max-width:680px){.route-card>img{height:390px}.route-overlay{top:245px;left:15px;right:15px;bottom:auto}.route-directions{padding:28px 22px}}


/* Final contact-area refinements – Build 1.2 */
.contact-cards.contact-cards-stacked{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:16px;
  width:100%;
  max-width:760px;
}

.contact-cards-stacked .contact-card{
  display:grid;
  grid-template-columns:minmax(120px, .32fr) minmax(0, 1fr);
  align-items:center;
  gap:22px;
  min-height:112px;
  padding:24px 28px;
  border:1px solid #e6ece8;
  box-shadow:0 12px 35px rgba(20,48,40,.045);
}

.contact-cards-stacked .contact-card span{
  margin:0;
  font-size:.92rem;
}

.contact-cards-stacked .contact-card strong{
  min-width:0;
  font-size:1.2rem;
  line-height:1.45;
}

.contact-direct-link{
  color:#17342e;
  text-decoration-thickness:1.5px;
  text-underline-offset:4px;
}

.contact-direct-link:hover{
  color:#60851a;
}

.contact-email-link{
  display:inline-block;
  white-space:nowrap;
  font-size:clamp(.9rem, 1.55vw, 1.2rem);
  letter-spacing:-.015em;
}

@media(max-width:680px){
  .contact-cards-stacked .contact-card{
    grid-template-columns:1fr;
    gap:5px;
    min-height:auto;
    padding:22px;
  }

  .contact-email-link{
    white-space:normal;
    overflow-wrap:anywhere;
    font-size:1rem;
  }
}


/* Dynamic copyright footer – STRATO FINAL */
.footer-copyright{
  width:100%;
  margin-top:26px;
  padding:18px 20px 22px;
  border-top:1px solid rgba(255,255,255,.14);
  text-align:center;
}

.footer-copyright p{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:.82rem;
  line-height:1.6;
}

.legal-page + footer .footer-copyright,
.related-services + footer .footer-copyright{
  margin-top:18px;
}

@media(max-width:680px){
  .footer-copyright{
    margin-top:20px;
    padding-inline:16px;
  }

  .footer-copyright p{
    font-size:.76rem;
  }
}
