:root {
  --font-family: "Nunito", sans-serif;
  --font-size-base: 15.1px;
  --line-height-base: 1.86;

  --max-w: 960px;
  --space-x: 1.99rem;
  --space-y: 1.5rem;
  --gap: 1.13rem;
  --space-section-y: calc(var(--space-y) * 2.4);
  --space-section-x: var(--space-x);
  --space-block: calc(var(--gap) * 1.5);
  --space-card: calc(var(--space-y) * .75);
  --font-size-sm: calc(var(--font-size-base) * .875);
  --font-size-md: var(--font-size-base);
  --font-size-lg: calc(var(--font-size-base) * 1.125);
  --font-size-h3: calc(var(--font-size-base) * 1.35);
  --font-size-h2: calc(var(--font-size-base) * 2);
  --font-size-h1: calc(var(--font-size-base) * 2.65);
  --motion-distance: calc(var(--gap) * var(--random-number));

  --radius-xl: 1.33rem;
  --radius-lg: 1rem;
  --radius-md: 0.61rem;
  --radius-sm: 0.31rem;

  --shadow-sm: 0 0px 2px rgba(0,0,0,0.04);
  --shadow-md: 0 6px 14px rgba(0,0,0,0.05);
  --shadow-lg: 0 8px 30px rgba(0,0,0,0.06);

  --overlay: rgba(0,0,0,0.4);
  --anim-duration: 470ms;
  --anim-ease: ease-in-out;
  --random-number: 2;

  --brand: #2E7D32;
  --brand-contrast: #FFFFFF;
  --accent: #43A047;
  --accent-contrast: #FFFFFF;

  --neutral-0: #FFFFFF;
  --neutral-100: #F1F8E9;
  --neutral-300: #C8E6C9;
  --neutral-600: #6D8B74;
  --neutral-800: #2E3B32;
  --neutral-900: #1B231D;

  --c-page-bg: #FFFFFF;
  --c-page-fg: #1B231D;
  --c-muted-bg: #F1F8E9;
  --c-muted-fg: #2E3B32;
  --c-card-bg: #FFFFFF;
  --c-card-fg: #1B231D;
  --c-card-border: #C8E6C9;
  --c-inverse-bg: #1B231D;
  --c-inverse-fg: #FFFFFF;
  --c-primary-bg: #2E7D32;
  --c-primary-fg: #FFFFFF;
  --c-primary-hover: #1B5E20;
  --c-accent-bg: #43A047;
  --c-accent-fg: #FFFFFF;
  --c-accent-hover: #388E3C;
  --g-hero-bg: linear-gradient(135deg, #E8F5E9 0%, #FFFFFF 100%);
  --g-hero-fg: #1B231D;
  --g-accent-bg: linear-gradient(135deg, #43A047 0%, #2E7D32 100%);
  --g-accent-fg: #FFFFFF;

  --section-light-bg: var(--c-page-bg);
  --section-light-fg: var(--c-page-fg);
  --section-muted-bg: var(--c-muted-bg);
  --section-muted-fg: var(--c-muted-fg);
  --section-card-bg: var(--c-card-bg);
  --section-card-fg: var(--c-card-fg);
  --section-colored-bg: var(--c-inverse-bg);
  --section-colored-fg: var(--c-inverse-fg);
  --section-gradient-bg: var(--g-hero-bg);
  --section-gradient-fg: var(--g-hero-fg);

  --bg-page: var(--c-page-bg);
  --fg-on-page: var(--c-page-fg);

  --bg-alt: var(--c-muted-bg);
  --fg-on-alt: var(--c-muted-fg);

  --surface-1: var(--c-inverse-bg);
  --surface-2: var(--c-muted-bg);
  --fg-on-surface: var(--c-inverse-fg);
  --border-on-surface: var(--c-card-border);

  --surface-light: var(--c-card-bg);
  --fg-on-surface-light: var(--c-card-fg);
  --border-on-surface-light: var(--c-card-border);

  --bg-primary: var(--c-primary-bg);
  --fg-on-primary: var(--c-primary-fg);
  --bg-primary-hover: var(--c-primary-hover);
  --ring: #43A047;

  --bg-accent: var(--c-accent-bg);
  --fg-on-accent: var(--c-accent-fg);
  --bg-accent-hover: var(--c-accent-hover);

  --link: #2E7D32;
  --link-hover: #43A047;

  --gradient-hero: var(--g-hero-bg);
  --gradient-hero-fg: var(--g-hero-fg);
  --gradient-accent: var(--g-accent-bg);
  --gradient-accent-fg: var(--g-accent-fg);

  --btn-ghost-bg: transparent;
  --chip-bg: color-mix(in srgb, var(--c-card-bg) 88%, var(--c-accent-bg) 12%);
  --chip-fg: var(--c-card-fg);
  --btn-ghost-bg-hover: color-mix(in srgb, currentColor 10%, transparent);
  --input-placeholder: rgba(255,255,255,0.55);
}
body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
*{box-sizing:border-box;}
a{color:inherit;}
.btn-primary,.btn.btn-primary{background:var(--c-primary-bg)!important;color:var(--c-primary-fg)!important;border-color:var(--c-primary-bg)!important;}
.btn-primary:hover,.btn.btn-primary:hover{background:var(--c-primary-hover)!important;color:var(--c-primary-fg)!important;border-color:var(--c-primary-hover)!important;}
.btn-outline-primary{color:var(--c-primary-bg)!important;border-color:var(--c-primary-bg)!important;}
.btn-outline-primary:hover{background:var(--c-primary-bg)!important;color:var(--c-primary-fg)!important;}
.bg-primary{background:var(--c-primary-bg)!important;color:var(--c-primary-fg)!important;}
.text-primary{color:var(--c-primary-bg)!important;}
.border-primary{border-color:var(--c-primary-bg)!important;}
.bg-light{background:var(--section-light-bg)!important;color:var(--section-light-fg)!important;}
.bg-dark{background:var(--section-colored-bg)!important;color:var(--section-colored-fg)!important;}

.site-header {
  background-color: var(--section-light-bg);
  color: var(--section-light-fg);
  width: 100%;
  border-bottom: 1px solid var(--c-card-border);
}

.header-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: var(--max-w);
  margin: 0 auto;
  padding: var(--space-y) var(--space-x);
  gap: var(--gap);
}

.logo {
  font-size: var(--font-size-h3);
  font-weight: 700;
  text-decoration: none;
  color: var(--section-light-fg);
  line-height: 1.2;
  white-space: nowrap;
  transition: opacity var(--anim-duration) var(--anim-ease);
}

.logo:hover {
  opacity: 0.85;
}

.burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 10;
}

.burger-line {
  display: block;
  width: 24px;
  height: 2px;
  background-color: var(--section-light-fg);
  border-radius: var(--radius-sm);
  transition: transform var(--anim-duration) var(--anim-ease), opacity var(--anim-duration) var(--anim-ease);
}

.burger.active .burger-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.burger.active .burger-line:nth-child(2) {
  opacity: 0;
}

.burger.active .burger-line:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.nav-menu {
  display: flex;
  align-items: center;
}

.nav-list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--gap);
}

.nav-link {
  text-decoration: none;
  font-size: var(--font-size-md);
  color: var(--section-light-fg);
  padding: var(--space-y) 0;
  transition: color var(--anim-duration) var(--anim-ease);
  white-space: nowrap;
}

.nav-link:hover {
  color: var(--c-primary-hover);
}

@media (max-width: 767px) {
  .burger {
    display: flex;
  }

  .nav-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: var(--section-light-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--anim-duration) var(--anim-ease), visibility var(--anim-duration) var(--anim-ease);
    z-index: 5;
  }

  .nav-menu.open {
    opacity: 1;
    visibility: visible;
  }

  .nav-list {
    flex-direction: column;
    align-items: center;
    gap: calc(var(--gap) * 1.5);
  }

  .nav-link {
    font-size: var(--font-size-lg);
    padding: var(--space-y) var(--space-x);
  }
}

.footer-container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 2rem 1.5rem;
      background-color: #f5f2ed;
      color: #3a3a3a;
      font-family: 'Georgia', 'Times New Roman', serif;
      line-height: 1.6;
    }
    .footer-contact {
      margin-bottom: 1.5rem;
    }
    .footer-contact address {
      font-style: normal;
      display: flex;
      flex-wrap: wrap;
      gap: 1rem;
    }
    .contact-item {
      display: inline-block;
    }
    .contact-item a {
      color: #5a7a5a;
      text-decoration: none;
    }
    .contact-item a:hover {
      text-decoration: underline;
    }
    .footer-brand {
      margin-bottom: 1rem;
    }
    .footer-logo {
      font-size: 1.8rem;
      font-weight: bold;
      letter-spacing: 2px;
      color: #4a6b4a;
    }
    .footer-nav {
      margin-bottom: 1.5rem;
    }
    .footer-nav ul {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 1.5rem;
    }
    .footer-nav a {
      color: #3a3a3a;
      text-decoration: none;
      font-size: 1rem;
    }
    .footer-nav a:hover {
      color: #5a7a5a;
      text-decoration: underline;
    }
    .footer-legal {
      margin-bottom: 1.5rem;
      display: flex;
      flex-wrap: wrap;
      gap: 1.5rem;
    }
    .footer-legal a {
      color: #5a7a5a;
      text-decoration: none;
      font-size: 0.9rem;
    }
    .footer-legal a:hover {
      text-decoration: underline;
    }
    .footer-disclaimer {
      margin-bottom: 1rem;
      padding: 1rem 0;
      border-top: 1px solid #d4cfc8;
      border-bottom: 1px solid #d4cfc8;
    }
    .footer-disclaimer p {
      font-size: 0.85rem;
      color: #5a5a5a;
      margin: 0;
    }
    .footer-copyright {
      font-size: 0.85rem;
      color: #7a7a7a;
    }
    .footer-copyright p {
      margin: 0;
    }
    @media (max-width: 768px) {
      .footer-contact address {
        flex-direction: column;
        gap: 0.5rem;
      }
      .footer-nav ul {
        flex-direction: column;
        gap: 0.75rem;
      }
      .footer-legal {
        flex-direction: column;
        gap: 0.75rem;
      }
    }

.cookies{position:fixed;left:var(--space-x);right:var(--space-x);bottom:var(--space-y);z-index:1200;}

    .cookies .wrap{max-width:var(--max-w);margin:0 auto;padding:12px;border:1px solid var(--c-card-border);border-radius:var(--radius-lg);background:var(--c-card-bg);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--gap);color:var(--c-card-fg);}

    .cookies .wrap p{margin:0;}

    .cookies .actions{display:flex;gap:8px;flex-wrap:wrap;}

    .cookies .actions button{border:1px solid var(--c-card-border);border-radius:var(--radius-sm);background:var(--c-card-bg);color:var(--c-card-fg);padding:7px 10px;cursor:pointer;}

    .cookies .actions button[data-choice='accept']{background:var(--c-primary-bg);border-color:var(--c-primary-bg);color:var(--c-primary-fg);}

.intro-softarrival{padding:calc(var(--space-y)*2.9) var(--space-x);background:var(--c-page-bg);color:var(--c-page-fg);}
.intro-softarrival .softarrival-wrap{max-width:var(--max-w);margin:0 auto;display:grid;gap:1rem;}.intro-softarrival .softarrival-head{background:var(--c-card-bg);border:1px solid var(--c-card-border);border-radius:var(--radius-xl);padding:1.2rem;color:var(--c-card-fg);}.intro-softarrival h1{margin:0;font-size:clamp(2.4rem,6vw,5.2rem);line-height:.96;}.intro-softarrival .softarrival-body{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;}.intro-softarrival .softarrival-body p{margin:0;color:var(--neutral-600);max-width:46rem;}.intro-softarrival .softarrival-body div{display:flex;gap:.55rem;flex-wrap:wrap;}.intro-softarrival a{background:var(--c-primary-bg);color:var(--c-primary-fg);text-decoration:none;border-radius:var(--radius-md);padding:.72rem .95rem;}.intro-softarrival a+a{background:var(--c-accent-bg);color:var(--c-accent-fg);}
@media (max-width:760px){.intro-softarrival .softarrival-body{grid-template-columns:1fr;}}

.merits {
    padding: clamp(3.5rem, 8vw, 6rem) var(--space-x);
    background: radial-gradient(circle at 20% 20%, color-mix(in srgb, currentColor 15%, transparent), transparent 25%), var(--section-gradient-bg);
    position: relative;
    overflow: hidden;
    isolation: isolate;
    color: var(--section-gradient-fg);
}

.merits::after {
    content: '';
    position: absolute;
    right: clamp(1rem, 5vw, 3.5rem);
    top: clamp(1rem, 5vw, 3rem);
    width: clamp(4rem, 11vw, 7rem);
    height: clamp(4rem, 11vw, 7rem);
    border-top: 2px solid color-mix(in srgb, currentColor 20%, transparent);
    border-right: 2px solid color-mix(in srgb, currentColor 14%, transparent);
    opacity: .55;
    transform: rotate(calc((var(--random-number, 1) - 1) * 8deg));
    pointer-events: none;
}

.merits .wrap {
    max-width: var(--max-w);
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.merits .head {
    margin-bottom: 1.1rem;
}

.merits .head p {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: .82rem;
}

.merits .head h2 {
    margin: .5rem 0 0;
    font-size: clamp(2rem, 4vw, 3rem);
}

.merits .head span {
    display: block;
    margin-top: .8rem;
}

.merits .grid {
    display: grid;
    grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr));
    gap: var(--gap);
}

.merits .grid article {
    padding: 1rem;
    border-radius: var(--radius-lg);
    background: var(--chip-bg);
    border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
    color: var(--chip-fg);
}

.merits .meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.merits .meta span {
}

.merits .grid h3 {
    margin: .75rem 0 .35rem;
}

.merits .grid p {
    margin: 0;
}

.merits .grid small {
    display: block;
    margin-top: .55rem;
}

.contact-strip{padding:clamp(56px,8vw,96px) 16px;background:var(--c-muted-bg);color:var(--c-muted-fg);}

    .contact-strip .wrap{max-width:860px;margin:0 auto;}

    .contact-strip .header{margin-bottom:14px;}

    .contact-strip h2{margin:0;font-size:clamp(28px,4vw,40px);}

    .contact-strip .header p{margin:10px 0 0;}

    .contact-strip ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;}

    .contact-strip li{border:1px solid var(--c-card-border);border-radius:12px;background:var(--section-light-bg);padding:10px 12px;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;color:var(--section-light-fg);}

    .contact-strip li span{font-size:.85rem;}

    .contact-strip li a{text-decoration:none;}

    .contact-strip .cta{display:inline-block;margin-top:12px;text-decoration:none;background:var(--c-primary-bg);color:var(--c-primary-fg);border-radius:10px;padding:10px 14px;}

    @media (max-width: 680px){.contact-strip li{grid-template-columns:1fr;}
    }

.case{background:var(--section-gradient-bg);color:var(--section-gradient-fg);padding:clamp(40px,6vw,80px) clamp(16px,3vw,40px);position:relative;overflow:hidden;}

    .case .c{max-width:var(--max-w);margin:0 auto;position:relative;z-index:1;}

    .case .h{text-align:center;margin-bottom:clamp(32px,5vw,64px);}

    .case h2{font-size:clamp(32px,5vw,48px);margin:0 0 1rem;}

    .case .subtitle{font-size:clamp(16px,2vw,20px);margin:0;opacity:0.9;}

    .case .list{display:flex;flex-direction:column;gap:clamp(16px,2vw,24px);}

    .case .item{display:flex;gap:clamp(16px,2vw,24px);background:var(--c-card-bg);padding:clamp(20px,3vw,32px);border-radius:var(--radius-lg);border:1px solid var(--c-card-border);align-items:flex-start;position:relative;overflow:hidden;transition:all var(--anim-duration) var(--anim-ease);color:var(--c-card-fg);}

    .case .item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c-accent-bg);opacity:.75;transform:scaleY(.35);transform-origin:top;transition:transform .45s var(--anim-ease),opacity .45s var(--anim-ease);}

    .case .item:hover{transform:translateY(-3px);box-shadow:0 12px 28px color-mix(in srgb, currentColor 14%, transparent);}

    .case .item:hover::before{transform:scaleY(1);opacity:1;}

    .case .number{flex-shrink:0;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--c-accent-bg);color:var(--c-accent-fg);border-radius:var(--radius-md);font-size:clamp(20px,2.5vw,28px);font-weight:700;position:relative;transition:transform var(--anim-duration) var(--anim-ease);}

    .case .item:hover .number{transform:translateY(-2px);}

    .case .number::after{content:'';position:absolute;inset:8px;border-radius:inherit;border:1px solid color-mix(in srgb, currentColor 38%, transparent);opacity:.45;}

    .case .content{flex:1;}

    .case .item h3{font-size:clamp(18px,2.2vw,24px);margin:0 0 0.75rem;transition:color var(--anim-duration) var(--anim-ease);}

    .case .item:hover h3{}

    .case .item p{margin:0;opacity:0.85;line-height:var(--line-height-base);}

.faq{padding:calc(var(--space-y) * 2.8) var(--space-x);background:var(--c-muted-bg);color:var(--c-muted-fg);}

    .faq .shell{max-width:var(--max-w);margin:0 auto;display:grid;gap:1rem;}

    .faq h2{margin:0;font-size:clamp(1.8rem,3.3vw,2.5rem);}

    .faq .bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);}

    .faq article{padding:1rem;border-radius:var(--radius-lg);background:var(--c-card-bg);box-shadow:var(--shadow-sm);color:var(--c-card-fg);}

    .faq h3{margin:0 0 .45rem;font-size:1rem;}

    .faq p{margin:0;}

    @media (max-width: 980px){.faq .bands{grid-template-columns:repeat(2,minmax(0,1fr));}
    }

    @media (max-width: 680px){.faq .bands{grid-template-columns:1fr;}
    }

.bloglist-minimaldeck{padding:calc(var(--space-y)*2.8) var(--space-x);background:var(--c-card-bg);color:var(--c-card-fg);}
.bloglist-minimaldeck .minimaldeck-wrap{max-width:var(--max-w);margin:0 auto;}.bloglist-minimaldeck h2{margin:0 0 1rem;font-size:clamp(1.9rem,3.5vw,2.85rem);}.bloglist-minimaldeck .minimaldeck-wrap>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--c-card-border);border-left:1px solid var(--c-card-border);}.bloglist-minimaldeck .article{padding:1rem;border-right:1px solid var(--c-card-border);border-bottom:1px solid var(--c-card-border);min-height:11rem;}.bloglist-minimaldeck h3{margin:0 0 .55rem;font-size:1.05rem;}.bloglist-minimaldeck a{text-decoration:none;}.bloglist-minimaldeck p{margin:0;color:var(--neutral-600);}
@media (max-width:760px){.bloglist-minimaldeck .minimaldeck-wrap>div{grid-template-columns:1fr;}}

.picks{padding:calc(var(--space-y)*2.9) var(--space-x);background:var(--section-gradient-bg);color:var(--section-gradient-fg);} .picks .shell{max-width:var(--max-w);margin:0 auto;display:grid;gap:var(--gap);} .picks h2{margin:0;font-size:clamp(1.85rem,3.6vw,2.8rem);line-height:1.1;} .picks .sub{margin:.35rem 0 0;opacity:.9;} .picks article,.picks li{padding:.85rem;border-radius:var(--radius-sm);background:var(--chip-bg);border:1px solid var(--btn-ghost-bg-hover);list-style:none;color:var(--chip-fg);} .picks p{margin:0;} .picks a{text-decoration:none;color:inherit;font-weight:700;} .picks .hero{padding:1rem;border-radius:var(--radius-lg);background:var(--chip-bg);border:1px solid var(--btn-ghost-bg-hover);color:var(--chip-fg);} .picks .stack{display:grid;gap:.45rem;margin-top:.7rem;} .picks .stack p{padding:.65rem;border-radius:var(--radius-sm);background:var(--chip-bg);border:1px solid var(--btn-ghost-bg-hover);color:var(--chip-fg);} .picks article{transition:transform var(--anim-duration) var(--anim-ease),box-shadow var(--anim-duration) var(--anim-ease);} .picks article:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);} @media (max-width:860px){.picks .split,.picks .media,.picks .grid,.picks .cards,.picks .bento,.picks .foot{grid-template-columns:1fr;}}

.pathway {padding:clamp(3.1rem, 7vw, 5.6rem) var(--space-x);background:var(--section-muted-bg);color:var(--section-muted-fg);margin:0 auto;}

.pathway .wrap {max-width:var(--max-w);margin:0 auto;}

.pathway .head p {margin:0;}

.pathway .head h2 {margin:.5rem 0 0;font-size:clamp(2rem, 4vw, 3rem);}

.pathway .line {margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr));gap:.7rem;}

.pathway .line a {display:flex;gap:.6rem;align-items:center;padding:.9rem;border-radius:var(--radius-md);background:var(--section-muted-bg);border:1px solid var(--c-card-border);text-decoration:none;color:var(--section-muted-fg);}

.pathway .line i {font-style:normal;}

.pathway .copy {margin:1rem 0 0;}

.pathway .cta {display:inline-flex;margin-top:1rem;min-height:2.8rem;align-items:center;justify-content:center;padding:0 1rem;border-radius:var(--radius-md);background:var(--c-primary-bg);color:var(--c-primary-fg);text-decoration:none;}

.blog-item{padding:clamp(48px,8vw,80px) 0;color:var(--section-light-fg);background:var(--section-light-bg);}

.blog-item .inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--space-x);}

.blog-item .content{max-width:800px;margin:0 auto;}

.blog-item .content h2{margin-top:2rem;margin-bottom:1rem;}

.blog-item .content p{max-width:100%;margin-bottom:1.5rem;}

.blog-item .content ul,.blog-item .content ol{margin-left:2rem;margin-bottom:1.5rem;}

.blog-item .content li{margin-bottom:0.5rem;line-height:1.6;}

.blog-item .callout{margin-top:2rem;padding:clamp(16px,3vw,24px);background-color:var(--c-muted-bg);border-radius:var(--radius-lg);border:1px solid var(--c-card-border);color:var(--c-muted-fg);}

.blog-item .callout p{margin:0;}

.blog-item .actions{margin-top:2rem;text-align:center;}

.blog-item .btn{display:inline-block;padding:12px 30px;border-radius:var(--radius-md);font-weight:500;text-align:center;transition:all var(--anim-duration) var(--anim-ease);cursor:pointer;border:1px solid var(--c-primary-bg);font-size:1rem;background-color:var(--c-primary-bg);color:var(--c-primary-fg);}

.blog-item .btn:hover{background-color:var(--c-primary-hover);border-color:var(--c-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--c-primary-fg);}

.author{color:var(--c-page-fg);background:var(--c-page-bg);padding:clamp(32px,5vw,64px) clamp(16px,4vw,40px);}

    .author .c{max-width:var(--max-w);margin:0 auto;}

    .author .card{max-width:600px;margin:0 auto;text-align:center;background:var(--c-card-bg);padding:clamp(32px,5vw,48px);border-radius:var(--radius-xl);color:var(--c-card-fg);}

    .author .image{width:clamp(140px,20vw,200px);height:clamp(140px,20vw,200px);margin:0 auto clamp(24px,4vw,32px);border-radius:50%;overflow:hidden;}

    .author .info h3{font-size:clamp(26px,4.5vw,36px);margin:0 0 0.5rem;}

    .author .role{font-size:clamp(16px,2.5vw,18px);margin:0 0 1.5rem;font-weight:600;}

    .author .bio{font-size:clamp(15px, 2.2vw, 17px);line-height:1.7;margin:0;}

.panel-blog-item{padding:clamp(48px,8vw,80px) 0;color:var(--section-light-fg);background:var(--section-light-bg);}

.panel-blog-item .inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--space-x);}

.panel-blog-item .content{max-width:800px;margin:0 auto;}

.panel-blog-item .content h2{margin-top:2rem;margin-bottom:1rem;}

.panel-blog-item .content p{max-width:100%;margin-bottom:1.5rem;}

.panel-blog-item .content ul,.panel-blog-item .content ol{margin-left:2rem;margin-bottom:1.5rem;}

.panel-blog-item .content li{margin-bottom:0.5rem;line-height:1.6;}

.panel-blog-item .callout{margin-top:2rem;padding:clamp(16px,3vw,24px);background-color:var(--c-muted-bg);border-radius:var(--radius-lg);border:1px solid var(--c-card-border);color:var(--c-muted-fg);}

.panel-blog-item .callout p{margin:0;}

.panel-blog-item .actions{margin-top:2rem;text-align:center;}

.panel-blog-item .btn{display:inline-block;padding:12px 30px;border-radius:var(--radius-md);font-weight:500;text-align:center;transition:all var(--anim-duration) var(--anim-ease);cursor:pointer;border:1px solid var(--c-primary-bg);font-size:1rem;background-color:var(--c-primary-bg);color:var(--c-primary-fg);}

.panel-blog-item .btn:hover{background-color:var(--c-primary-hover);border-color:var(--c-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--c-primary-fg);}

.area-blog-item{padding:clamp(48px,8vw,80px) 0;color:var(--section-light-fg);background:var(--section-light-bg);}

.area-blog-item .inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--space-x);}

.area-blog-item .content{max-width:800px;margin:0 auto;}

.area-blog-item .content h2{margin-top:2rem;margin-bottom:1rem;}

.area-blog-item .content p{max-width:100%;margin-bottom:1.5rem;}

.area-blog-item .content ul,.area-blog-item .content ol{margin-left:2rem;margin-bottom:1.5rem;}

.area-blog-item .content li{margin-bottom:0.5rem;line-height:1.6;}

.area-blog-item .callout{margin-top:2rem;padding:clamp(16px,3vw,24px);background-color:var(--c-muted-bg);border-radius:var(--radius-lg);border:1px solid var(--c-card-border);color:var(--c-muted-fg);}

.area-blog-item .callout p{margin:0;}

.area-blog-item .actions{margin-top:2rem;text-align:center;}

.area-blog-item .btn{display:inline-block;padding:12px 30px;border-radius:var(--radius-md);font-weight:500;text-align:center;transition:all var(--anim-duration) var(--anim-ease);cursor:pointer;border:1px solid var(--c-primary-bg);font-size:1rem;background-color:var(--c-primary-bg);color:var(--c-primary-fg);}

.area-blog-item .btn:hover{background-color:var(--c-primary-hover);border-color:var(--c-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--c-primary-fg);}

.address {
  padding: calc(var(--space-y) * 2.9) var(--space-x);
  background: var(--section-gradient-bg);
  color: var(--section-gradient-fg);
}
.address .shell {
  max-width: var(--max-w);
  margin: 0 auto;
  display: grid;
  gap: var(--gap);
}
.address h2 {
  margin: 0;
  font-size: clamp(1.85rem, 3.6vw, 2.8rem);
  line-height: 1.1;
}
.address .sub {
  margin: 0.35rem 0 0;
  opacity: 0.9;
}
.address p {
  margin: 0;
}
.address .pulse {
  margin-top: 0.8rem;
  padding: 1rem;
  border-radius: var(--radius-lg);
  background: var(--chip-bg);
  border: 1px solid var(--btn-ghost-bg-hover);
  animation: contacts-u7Pulse 2.8s ease-in-out infinite;
  color: var(--chip-fg);
}
@keyframes contacts-u7Pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.01); }
}
@media (max-width: 860px) {
  .address .shell {
    grid-template-columns: 1fr;
  }
}

.form-clearstep{padding:calc(var(--space-y)*2.65) var(--space-x);background:var(--c-muted-bg);color:var(--c-muted-fg);}
.form-clearstep .clearstep-wrap{max-width:var(--max-w);margin:0 auto;}.form-clearstep .clearstep-form{display:grid;grid-template-columns:1.1fr repeat(2,minmax(0,.95fr));gap:.72rem;align-items:stretch;}
.form-clearstep .clearstep-head{grid-row:span 3;background:var(--c-card-bg);border:1px solid var(--c-card-border);border-radius:var(--radius-xl);padding:1.2rem;display:flex;flex-direction:column;justify-content:center;color:var(--c-card-fg);}.form-clearstep h2{margin:0;font-size:clamp(1.9rem,3.5vw,2.9rem);line-height:1.06;}.form-clearstep p{margin:.8rem 0 0;color:var(--neutral-600);}
.form-clearstep label{background:var(--c-card-bg);border:1px solid var(--c-card-border);border-radius:var(--radius-lg);padding:.9rem;display:grid;gap:.32rem;color:var(--c-card-fg);}.form-clearstep span{font-size:.82rem;color:var(--neutral-600);}.form-clearstep input,.form-clearstep textarea{width:100%;border:0;background:transparent;font:inherit;outline-color:var(--ring);}
.form-clearstep .clearstep-full{grid-column:2/-1;}.form-clearstep textarea{min-height:8.5rem;resize:vertical;}.form-clearstep button{grid-column:2/-1;justify-self:start;border:0;border-radius:var(--radius-md);background:var(--c-primary-bg);color:var(--c-primary-fg);padding:.82rem 1.08rem;font:inherit;font-weight:700;}
@media (max-width:860px){.form-clearstep .clearstep-form{grid-template-columns:1fr;}.form-clearstep .clearstep-head,.form-clearstep .clearstep-full,.form-clearstep button{grid-column:auto;grid-row:auto;}}

.policy-items {
  padding: calc(var(--space-y) * 2.9) var(--space-x);
  background: var(--section-colored-bg);
  color: var(--section-colored-fg);
}
.policy-items .shell {
  max-width: var(--max-w);
  margin: 0 auto;
  display: grid;
  gap: var(--gap);
}
.policy-items h2 {
  margin: 0;
  font-size: clamp(1.85rem, 3.6vw, 2.8rem);
  line-height: 1.1;
}
.policy-items .sub {
  margin: .35rem 0 0;
  opacity: .9;
}
.policy-items article,
.policy-items li {
  padding: .85rem;
  border-radius: var(--radius-sm);
  background: var(--chip-bg);
  border: 1px solid var(--btn-ghost-bg-hover);
  list-style: none;
  color: var(--chip-fg);
}
.policy-items p {
  margin: 0;
}
.policy-items a {
  text-decoration: none;
  color: inherit;
  font-weight: 700;
}
.policy-items .cards {
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
}
@media (max-width: 860px) {
  .policy-items .split,
  .policy-items .media,
  .policy-items .grid,
  .policy-items .cards,
  .policy-items .bento,
  .policy-items .foot {
    grid-template-columns: 1fr;
  }
}

.terms-cleanfold{padding:calc(var(--space-y)*2.8) var(--space-x);background:var(--c-card-bg);color:var(--c-card-fg);}
.terms-cleanfold .cleanfold-wrap{max-width:920px;margin:0 auto;}.terms-cleanfold h2{margin:0;font-size:clamp(1.9rem,3.5vw,2.85rem);line-height:1.06;}.terms-cleanfold .cleanfold-sub{margin:.75rem 0 1rem;color:var(--neutral-600);}.terms-cleanfold ol{margin:0;padding-left:1.2rem;display:grid;gap:.6rem;}.terms-cleanfold li{padding:.8rem 0;border-bottom:1px solid var(--c-card-border);}.terms-cleanfold h3{margin:0 0 .25rem;font-size:1rem;}.terms-cleanfold li p{margin:0;color:var(--neutral-600);}

.thank{padding:calc(var(--space-y)*2.9) var(--space-x);background:var(--section-gradient-bg);color:var(--section-gradient-fg);} .thank .shell{max-width:var(--max-w);margin:0 auto;display:grid;gap:var(--gap);} .thank h2{margin:0;font-size:clamp(1.85rem,3.6vw,2.8rem);line-height:1.1;} .thank .sub{margin:.35rem 0 0;opacity:.9;} .thank article,.thank li{padding:.85rem;border-radius:var(--radius-sm);background:var(--chip-bg);border:1px solid var(--btn-ghost-bg-hover);list-style:none;color:var(--chip-fg);} .thank p{margin:0;} .thank a{text-decoration:none;color:inherit;font-weight:700;} .thank .pulse{margin-top:.8rem;padding:1rem;border-radius:var(--radius-lg);background:var(--chip-bg);border:1px solid var(--btn-ghost-bg-hover);animation:thank-u1Pulse 2.8s ease-in-out infinite;color:var(--chip-fg);} @keyframes thank-u1Pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.01);}} @media (max-width:860px){.thank .split,.thank .media,.thank .grid,.thank .cards,.thank .bento,.thank .foot{grid-template-columns:1fr;}}

.missing{padding:clamp(56px,10vw,114px) 20px;background:var(--c-accent-bg);color:var(--c-accent-fg);}

    .missing .plate{max-width:760px;margin:0 auto;text-align:center;padding:clamp(30px,4vw,50px);border-radius:var(--radius-xl);background:linear-gradient(160deg,color-mix(in srgb, currentColor 10%, transparent),color-mix(in srgb, currentColor 2%, transparent));border:1px solid color-mix(in srgb, currentColor 25%, transparent);}

    .missing h1{margin:0;font-size:clamp(32px,6vw,56px);}

    .missing p{margin:12px 0 0;}

    .missing a{display:inline-block;margin-top:18px;padding:10px 18px;border-radius:var(--radius-md);background:var(--c-accent-bg);color:var(--c-accent-fg);text-decoration:none;}