
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,500;0,600;1,500&family=Inter:wght@400;500;600;700;800&display=swap");
:root{
 --bg:#f8f9f5; --paper:#fffcf8; --dark:#253e34; --deep:#2f5c48; --muted:#60746b;
 --sage:#e1ecdf; --lav:#eeebf6; --peach:#f9e9df; --butter:#f6efda; --stroke:#dfe6df;
 --serif:'EB Garamond', Georgia,serif; --sans:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--bg);font-family:var(--sans);color:var(--dark);-webkit-font-smoothing:antialiased}
a{color:inherit}button{font:inherit}img{max-width:100%}svg{display:block}
.wrap{width:min(1190px,calc(100% - 80px));margin-inline:auto}
.topbar{background:#e9f0e6;border-bottom:1px solid #dce6d9;font-size:12px;color:#496254;}
.topbar .wrap{display:flex;gap:10px;align-items:center;justify-content:space-between;min-height:36px}
.topbar strong{font-weight:750;color:#355a46}.topbar .dot{width:7px;height:7px;background:#d98b6c;display:inline-block;border-radius:50%;margin-right:8px;}
.topbar .toplink{text-decoration:none;display:inline-flex;align-items:center;gap:8px;font-weight:700;}
.header{position:sticky;top:0;z-index:30;background:rgba(248,249,245,.94);backdrop-filter:blur(20px);border-bottom:1px solid rgba(213,224,216,.8)}
.nav{height:89px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:205px}
.brand-icon{width:53px;height:53px;border-radius:17px;background:#f2e9d1;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(51,75,54,.05)}
.brand-icon img{width:53px;height:53px;object-fit:cover}
.brand-title{font-size:16px;letter-spacing:-.05em;font-weight:850;line-height:1.05}.brand-sub{display:block;color:#627567;font-size:11px;font-weight:700;letter-spacing:.16em;margin-top:5px}
.nav-pills{display:flex;align-items:center;padding:5px;gap:2px;border:1px solid #e1e8df;border-radius:999px;background:#edf1e9}
.nav-pills a{text-decoration:none;font-size:13px;font-weight:650;color:#607168;padding:12px 17px;border-radius:999px;transition:.2s}
.nav-pills a.active,.nav-pills a:hover{color:var(--dark);background:#fff;box-shadow:0 2px 9px rgba(39,63,52,.07)}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:0 23px;white-space:nowrap;border-radius:999px;text-decoration:none;font-size:13px;font-weight:750;border:1px solid transparent;transition:transform .2s,background .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px)}.button:focus-visible,.nav-pills a:focus-visible,.brand:focus-visible,summary:focus-visible{outline:3px solid #a5c5ad;outline-offset:4px}
.button.dark{color:white;background:var(--deep);box-shadow:0 10px 22px rgba(45,95,69,.12)}
.button.dark:hover{background:#244836;box-shadow:0 15px 25px rgba(45,95,69,.19)}
.button.outline{border-color:#cad9cb;color:var(--dark);background:rgba(255,255,255,.56)}
.button .arrow{font-size:18px;font-weight:400;line-height:1}
.nav-cta{min-height:44px;padding-inline:20px}
.menu-toggle{display:none;border:1px solid var(--stroke);background:var(--paper);border-radius:15px;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer;color:var(--dark)}
.mobnav{display:none}
.hero{position:relative;overflow:hidden;padding:82px 0 72px}
.hero:before{position:absolute;content:"";width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,#eff3e8 0%,rgba(239,243,232,0) 67%);left:-320px;top:-150px;pointer-events:none;z-index:0}
.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:62px;align-items:center;position:relative;z-index:1}
.kicker{display:inline-flex;align-items:center;gap:10px;border:1px solid #dfe7da;background:#eff4e9;border-radius:999px;padding:10px 15px;font-size:11px;font-weight:800;letter-spacing:.09em;color:#47715b;text-transform:uppercase}
.kicker:before{content:"";width:7px;height:7px;background:#7fa78b;border-radius:50%}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(48px,4.25vw,62px);font-weight:750;line-height:1.045;letter-spacing:-.067em;margin:28px 0 24px;max-width:650px}
h1 .soft{font-family:var(--serif);color:#4e775f;font-style:italic;font-weight:500;letter-spacing:-.047em;white-space:normal}
.hero .lede{font-size:17px;line-height:1.85;color:var(--muted);max-width:482px;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.hero-note{display:flex;align-items:center;gap:10px;font-size:12px;color:#76887d;margin-top:35px;letter-spacing:.006em}
.hero-note .heart{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#f5e8e3;color:#b57462;font-size:15px}
.visual{position:relative;min-width:0;padding:18px 22px 20px 14px}
.visual:before{content:"";position:absolute;inset:15px 7px 0 50px;border-radius:46% 46% 32% 33% / 34% 38% 33% 37%;transform:rotate(7deg);background:var(--lav)}
.visual .photo{position:relative;background:#e5ebe1;border:9px solid var(--paper);border-radius:39% 37% 29% 29% / 33% 32% 27% 26%;overflow:hidden;transform:rotate(-2deg);box-shadow:0 35px 60px rgba(44,73,58,.13);height:476px}
.visual .photo img{width:100%;height:100%;object-fit:cover;object-position:52% 50%;filter:saturate(.76) contrast(.95)}
.float-pill{position:absolute;z-index:3;display:flex;align-items:center;gap:9px;background:var(--paper);border:1px solid rgba(224,226,214,.85);color:#416b53;padding:11px 17px;border-radius:999px;font-size:12px;font-weight:750;box-shadow:0 9px 28px rgba(34,66,47,.1)}
.float-pill.top{right:-10px;top:68px;transform:rotate(6deg)}
.float-pill.bottom{bottom:2px;left:-23px;transform:rotate(-6deg);background:var(--peach);color:#7e5e52}
.float-pill .spark{font-size:18px;color:#d49d6c}
.section-tag{font-size:11px;text-transform:uppercase;font-weight:850;letter-spacing:.13em;color:#659071;display:block;margin-bottom:18px}
.event-band{padding-bottom:85px}
.event-card{display:grid;grid-template-columns:1.04fr .9fr 1.05fr auto;gap:24px;align-items:center;padding:25px 30px;background:var(--paper);border:1px solid #e4eae0;border-radius:27px;box-shadow:0 16px 60px rgba(37,67,49,.045)}
.event-item{padding-right:22px;min-height:57px;border-right:1px solid #e3e8e0}
.event-item:last-of-type{border-right:0}.event-overline{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:850;color:#839488;margin-bottom:9px}
.event-title{font-size:20px;letter-spacing:-.055em;font-weight:800;white-space:nowrap}
.event-sub{font-size:12px;color:#7a897e;margin-top:6px;line-height:1.4}
.status{display:inline-flex;align-items:center;gap:8px;color:#916c50;font-weight:700;font-size:13px}
.status:before{content:"";width:8px;height:8px;border-radius:50%;background:#d9ab7b;flex-shrink:0}
.circle-link{width:48px;height:48px;border-radius:50%;background:#dfece0;text-decoration:none;color:#2f5c48;display:grid;place-items:center;font-size:25px;transition:transform .2s;flex-shrink:0}.circle-link:hover{transform:translateX(4px)}
.section{padding:108px 0}
.section-header{display:grid;grid-template-columns:1.03fr .97fr;gap:60px;align-items:end;margin-bottom:43px}
h2{font-size:clamp(42px,4.5vw,61px);font-weight:760;line-height:1.12;letter-spacing:-.064em;margin-bottom:0}
h2 em{font-family:var(--serif);color:#567f64;font-weight:500;letter-spacing:-.035em}
.section-header p{font-size:16px;line-height:1.85;color:var(--muted);margin-bottom:6px;max-width:470px}
.steps-area{background:#f0f4ed;border-top:1px solid #e7eee5;border-bottom:1px solid #e1eade}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{border:1px solid rgba(73,92,70,.06);border-radius:30px;padding:31px;min-height:280px;display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s}
.step:hover{transform:translateY(-5px);box-shadow:0 18px 30px rgba(47,75,57,.07)}
.step.one{background:#f8e9e1}.step.two{background:#eceaf5}.step.three{background:#dfece0}
.step-top{display:flex;justify-content:space-between;align-items:flex-start}
.step-no{font-size:13px;font-weight:800;color:#718073;letter-spacing:.1em}
.step-icon{width:55px;height:55px;border-radius:19px;background:rgba(255,255,255,.64);display:flex;align-items:center;justify-content:center;color:#4e7159}
.step-icon svg{width:27px;height:27px;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;fill:none}
.step h3{font-size:21px;letter-spacing:-.04em;margin:43px 0 11px}
.step p{font-size:14px;color:#67756b;line-height:1.75;margin:0}
.categories{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:34px}
.categories .ctitle{font-size:12px;font-weight:700;color:#7d8e80;margin-right:9px}
.categories span:not(.ctitle){font-size:12px;border:1px solid #d6e1d5;background:#f9fbf8;border-radius:999px;padding:9px 13px;color:#526d5b}
.location-section{background:var(--bg)}.where-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}
.where-image{padding:25px;background:#efecf5;border-radius:35px;position:relative}
.where-image img{width:100%;border-radius:24px;aspect-ratio:1.16;object-fit:cover;display:block}
.where-image .tiny-label{position:absolute;bottom:45px;left:45px;background:#fffcf8;color:#486958;padding:12px 15px;border-radius:15px;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;box-shadow:0 4px 25px #283c2e16}
.where-copy h2{margin-bottom:19px}.where-copy>p{line-height:1.84;color:var(--muted);font-size:16px;max-width:480px}
.where-card{border:1px solid #e0e8dd;border-radius:22px;padding:22px 24px;margin:26px 0 25px;background:#fffefa}
.where-line{display:flex;gap:13px;align-items:center}.where-line+.where-line{border-top:1px solid #e7eae4;padding-top:17px;margin-top:17px}
.where-line svg{width:22px;height:22px;color:#5f8b6e;stroke:currentColor;stroke-width:1.8;fill:none;flex-shrink:0}
.where-line strong{font-size:13px;display:block;margin-bottom:5px}.where-line small{font-size:12px;color:#819085;line-height:1.5;display:block}
.where-actions{display:flex;gap:11px;flex-wrap:wrap}
.story-section{background:#f9ede6;padding:87px 0}
.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}
.story-grid h2{margin-bottom:20px}.story-grid p{font-size:16px;color:#68776a;line-height:1.85;max-width:490px}
.story-stat{background:rgba(255,255,255,.56);border-radius:35px;padding:42px;text-align:center;border:1px solid rgba(255,255,255,.7)}
.story-stat .year{font-size:112px;letter-spacing:-.11em;line-height:1;color:#4e7862;font-family:var(--serif);font-weight:500}
.story-stat p{margin:8px auto 0;font-size:13px;max-width:270px;line-height:1.7}
.faq{background:#fafbf8}.faq-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:90px;align-items:start}
.faq-grid h2{margin-bottom:18px}.faq-grid .intro{font-size:15px;line-height:1.85;color:#758478;max-width:320px}
.faq-list{border-top:1px solid var(--stroke)}details{border-bottom:1px solid var(--stroke)}
summary{display:flex;list-style:none;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;padding:23px 2px;font-weight:720;font-size:15px;letter-spacing:-.018em}summary::-webkit-details-marker{display:none}
summary .plus{width:28px;height:28px;background:#ecf2eb;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:17px;color:#50775d;transition:transform .25s}
details[open] summary .plus{transform:rotate(45deg);background:#e1ebe1}
details p{font-size:14px;color:#6a796f;line-height:1.8;margin:0;padding:0 38px 24px 2px}
.faq a{color:#3e7051;text-underline-offset:3px}
.last-cta{padding:82px 0 98px;background:#fafbf8}
.cta-card{background:#dfece0;border-radius:36px;padding:50px 58px;display:flex;justify-content:space-between;align-items:center;gap:36px;position:relative;overflow:hidden}
.cta-card:after{content:"";position:absolute;border:34px solid rgba(255,255,255,.35);height:280px;width:280px;border-radius:50%;right:190px;top:-140px;pointer-events:none}
.cta-card h2{font-size:43px;margin:0 0 11px}.cta-card p{font-size:14px;color:#5b7762;margin:0;max-width:490px;line-height:1.7}
.cta-card .button{z-index:1}
.footer{background:#ecf1e9;border-top:1px solid #e0e8df;padding:52px 0 30px}
.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:70px}
.footer p,.footer a{color:#6d7f70;font-size:12px;line-height:1.95;text-decoration:none}
.footer .brand{margin-bottom:18px}.footer h4{margin:7px 0 18px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#52715b}
.footer-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #d7e2d8;margin-top:40px;padding-top:25px;font-size:11px;color:#879789}
@media(max-width:1030px){.hero-grid{gap:30px}h1{font-size:clamp(46px,5.1vw,57px)}.visual .photo{height:420px}.event-card{gap:13px;padding:24px 20px}.event-item{padding-right:11px}.event-title{font-size:17px}.where-grid{gap:45px}.nav-pills a{padding:11px 10px}.nav{height:78px}}
@media(max-width:760px){
 .wrap{width:min(100% - 40px,520px)}
 .topbar .wrap{min-height:35px;justify-content:center}.topbar .top-left{font-size:11px;line-height:1.35;text-align:center}.topbar .toplink{display:none}
 .nav{height:73px}.brand{gap:8px;min-width:0}.brand-icon,.brand-icon img{height:43px;width:43px}.brand-icon{border-radius:14px}.brand-title{font-size:14px;letter-spacing:-.045em}.brand-sub{font-size:9px;letter-spacing:.13em;margin-top:4px}
 .nav-pills,.nav-cta{display:none}.menu-toggle{display:flex}
 .mobnav{display:none;background:var(--paper);border-top:1px solid var(--stroke);padding:12px 20px 20px;box-shadow:0 15px 28px #253d2f17}
 .mobnav.is-open{display:grid;gap:5px}
 .mobnav a{display:block;text-decoration:none;border-radius:12px;padding:13px 10px;font-size:14px;font-weight:700;color:#486957}.mobnav a:last-child{background:var(--deep);color:#fff;text-align:center;margin-top:5px}
 .hero{padding:53px 0 48px}.hero-grid{grid-template-columns:1fr;gap:18px}
 .kicker{font-size:10px;padding:9px 12px;letter-spacing:.05em}
 h1{font-size:clamp(42px,10.6vw,55px);line-height:1.035;letter-spacing:-.067em;margin:22px 0 18px}
 h1 .soft{white-space:normal}
 .hero .lede{font-size:15px;line-height:1.75;margin-bottom:25px}
 .hero-actions{gap:12px}.hero-actions .button.dark{flex:1;justify-content:space-between}.hero-actions .button.outline{flex:1}
 .button{min-height:49px;font-size:12.5px;padding-inline:17px;gap:12px}.button .arrow{font-size:18px}
 .hero-note{margin-top:22px;font-size:11px}
 .visual{padding:26px 16px 12px 11px}.visual:before{inset:19px 1px 4px 43px}
 .visual .photo{height:295px;border-width:7px;border-radius:34% 34% 25% 25% / 30% 30% 25% 25%}
 .visual .photo img{object-position:50% 46%}
 .float-pill{padding:9px 12px;font-size:10px}.float-pill.top{right:-4px;top:23px}.float-pill.bottom{left:-9px;bottom:2px}
 .event-band{padding-bottom:64px}.event-card{display:block;position:relative;border-radius:25px;padding:25px}
 .event-item{border-right:0;padding-right:0;padding-bottom:17px;border-bottom:1px solid #e3e8e0;min-height:0;margin-bottom:17px}
 .event-item:nth-child(3){border-bottom:0;padding-bottom:0;margin-bottom:0;padding-right:56px}.event-overline{font-size:10px}.event-title{font-size:21px}.circle-link{position:absolute;right:23px;bottom:23px;width:44px;height:44px}
 .section{padding:72px 0}.section-header,.where-grid,.story-grid,.faq-grid{grid-template-columns:1fr;gap:23px}.section-header{margin-bottom:30px}
 h2{font-size:clamp(38px,10vw,47px)}.section-header p,.where-copy>p{font-size:14px;line-height:1.8}.steps{grid-template-columns:1fr;gap:13px}
 .step{min-height:0;padding:26px;border-radius:25px}.step-icon{width:48px;height:48px;border-radius:15px}.step h3{font-size:19px;margin:25px 0 8px}.step p{font-size:13px}
 .categories{margin-top:24px}.categories .ctitle{width:100%;margin-bottom:5px}
 .where-image{padding:16px;border-radius:27px;order:2}.where-image img{border-radius:19px}.where-image .tiny-label{bottom:30px;left:30px;font-size:10px}
 .where-copy{order:1}.where-card{padding:18px;margin:23px 0}.where-actions .button{flex:1}
 .story-section{padding:72px 0}.story-grid{gap:24px}.story-grid p{font-size:14px}.story-stat{padding:27px}.story-stat .year{font-size:93px}
 .faq-grid .intro{font-size:14px;max-width:100%}summary{font-size:13px;padding:21px 0;gap:16px}details p{font-size:12px;padding-right:12px}
 .last-cta{padding:44px 0 65px}.cta-card{padding:31px 26px;border-radius:28px;display:block}.cta-card h2{font-size:35px}.cta-card p{font-size:13px}.cta-card .button{margin-top:22px}.cta-card:after{right:-140px;top:-160px}
 .footer{padding:40px 0 25px}.footer-grid{grid-template-columns:1fr;gap:18px}.footer .brand{margin-bottom:10px}.footer h4{margin-bottom:5px}.footer p{margin-top:0}.footer-bottom{margin-top:25px;line-height:1.5;align-items:flex-start}
}
@media(max-width:360px){.wrap{width:calc(100% - 30px)}h1{font-size:39px}.hero-actions .button{padding-inline:13px;font-size:11px}.hero .lede{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* V3: gemeinsame Mittellinie für Label, Titel und Erklärung im Ablauf */
.steps-area > .wrap > .section-tag {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.steps-area .section-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 18px;
  margin-bottom: 43px;
}
.steps-area .section-header h2 { max-width: 810px; }
.steps-area .section-header p { max-width: 680px; margin: 0 auto; }
.steps-area .categories { justify-content: center; }
@media(max-width:760px) {
  .steps-area .section-header { gap: 15px; margin-bottom: 30px; }
  .steps-area .categories .ctitle { text-align: center; }
}


/* V4: Both hero CTA labels centered independently of their arrows. */
.hero-actions .button {
  position:relative;
  justify-content:center;
  text-align:center;
  padding-left:39px;
  padding-right:39px;
}
.hero-actions .button .arrow {
  position:absolute;
  top:50%;
  right:17px;
  transform:translateY(-50%);
  line-height:1;
}
@media(max-width:760px) {
  .hero-actions .button.dark { justify-content:center; }
}
@media(max-width:360px) {
  .hero-actions .button { padding-left:29px; padding-right:29px; }
  .hero-actions .button .arrow { right:11px; }
}

/* V5: exact section transitions under the sticky navigation. */
html { scroll-padding-top: 0; }


/* V8 / V8.1 – one source, two registration states. */
.topbar .top-status {
  display:inline-flex; align-items:center; margin-left:12px;
  padding:4px 9px; border-radius:999px;
  background:#f7e8d9; color:#875e3e;
  font-size:11px; font-weight:700; line-height:1.25;
  white-space:nowrap; vertical-align:middle;
}
.registration-open .topbar .top-status { background:#d3e9da; color:#246149; }

.registration-open .status {color:#2d7955;}
.registration-open .status:before {background:#49a471;}
.registration-action {
  display:inline-flex; align-items:center; gap:6px;
  color:#2f654d; font-size:12px; font-weight:750;
  text-decoration:none; margin-top:12px; line-height:1.3;
  transition:background .2s,color .2s,transform .2s;
}
.registration-action .arrow {font-size:15px;line-height:1;}
.registration-action:not(.is-open) {text-underline-offset:4px; text-decoration:underline; text-decoration-color:#b1c7b5;}
.registration-action:hover {transform:translateY(-1px);}
.registration-action:focus-visible {outline:3px solid #88b49b;outline-offset:3px;}
.registration-action.is-open {
  background:#2f634b; color:#fff;
  padding:10px 12px; border-radius:999px;
  max-width:100%; margin-top:12px;
  text-align:center; justify-content:center;
}
.registration-action.is-open:hover {background:#244e3a;}
@media(max-width:760px) {
  .topbar .top-status {display:table;margin:5px auto 0;font-size:10px;padding:3px 9px;}
  #termin .registration-action.is-open {padding:12px 16px;min-height:40px;}
}
@media(min-width:761px) and (max-width:1090px) {
  .topbar .top-status {font-size:10px;}
  #termin .registration-action.is-open {font-size:11px;padding:9px 10px;}
}


/* V9: Only the legal views are new. Base V8 remains untouched. */
.legal-main { background: var(--bg); }
.legal-hero { position:relative; overflow:hidden; padding:72px 0 64px;
 background:linear-gradient(118deg,#f2f6ee 0%,#f8f9f5 57%,#f3f0f5 100%);
 border-bottom:1px solid #e4eae1; }
.legal-hero::before { content:""; position:absolute;width:490px;height:490px;right:-150px;top:-260px;
 background:radial-gradient(circle,#e2ebde 0%,transparent 70%);pointer-events:none; }
.legal-narrow { max-width:860px; margin:0 auto; }
.legal-return { display:inline-flex;align-items:center;gap:9px;color:#4d725a;text-decoration:none;
 font-weight:700;font-size:13px;padding:11px 17px;background:rgba(255,255,255,.7);
 border:1px solid #dbe7da;border-radius:999px;margin-bottom:40px; transition:transform .2s,background .2s; }
.legal-return:hover { background:#fff; transform:translateX(-2px); }
.legal-return:focus-visible, .legal-card a:focus-visible, .footer a:focus-visible {outline:3px solid #91b69d;outline-offset:3px}
.legal-kicker { font-size:11px;font-weight:800;letter-spacing:.145em;text-transform:uppercase;color:#61876c;
 margin-bottom:16px;display:flex;align-items:center;gap:9px; }
.legal-kicker::before { content:""; width:8px;height:8px;background:#82a78d;border-radius:50%; }
.legal-title {font-family:var(--sans);font-size:clamp(52px,5.4vw,76px);font-weight:760;
 letter-spacing:-.069em;line-height:1.08;margin:0;color:var(--dark); }
.legal-title::after { content:"."; font-family:var(--serif);font-weight:500;font-style:italic;color:#61876c;margin-left:2px; }
.legal-content {padding:52px 0 110px;}
.legal-cards {display:grid;gap:18px;max-width:860px;margin-inline:auto;}
.legal-card { background:#fffefa; border:1px solid #e0e9dc; border-radius:28px;
 box-shadow:0 10px 38px rgba(42,78,51,.035);padding:34px 40px 35px;
 position:relative;overflow:hidden; }
.legal-card::before {content:"";position:absolute;left:0;top:26px;bottom:26px;width:4px;border-radius:0 8px 8px 0;background:#c9dfca;}
.legal-card:nth-child(3n+2)::before { background:#d6cfed; }
.legal-card:nth-child(3n)::before {background:#f3d5be;}
.legal-card h2 {font-family:var(--sans);font-size:clamp(21px,2.4vw,26px);font-weight:750;
 letter-spacing:-.045em;line-height:1.3;margin:0 0 16px;color:#2c4f3e;}
.legal-card p,.legal-card li {color:#64796b;font-family:var(--sans);font-size:15px;line-height:1.85;margin:0 0 15px;max-width:74ch;overflow-wrap:anywhere;}
.legal-card p:last-child {margin-bottom:0;}
.legal-card strong {color:#3b5a48;font-weight:750;}
.legal-card a {color:#326c50;text-decoration-color:#98bca4;text-underline-offset:4px;font-weight:600;}
.legal-card a:hover {color:#194a37;}
.legal-view-footer .footer {margin-top:0;}
@media(max-width:760px) {
 .legal-hero {padding:39px 0 47px;}
 .legal-return {margin-bottom:33px;font-size:12px;padding:10px 14px;}
 .legal-title {font-size:clamp(49px,12.5vw,67px)}
 .legal-content {padding:28px 0 65px;}
 .legal-cards {gap:13px;}
 .legal-card {padding:24px 23px 26px;border-radius:22px;}
 .legal-card h2 {font-size:21px;margin-bottom:12px;}
 .legal-card p {font-size:14px;line-height:1.8;}
}
@media(max-width:360px) {.legal-card {padding:22px 20px 23px;}}

