:root{--bg:#fbfbf8;
      --paper:#ffffff;
      --ink:#101a15;
      --muted: rgba(16,26,21,.70);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;
      --fog:#f2f4f1;

      --radius:18px;
      --radius2:26px;
      --radius3:36px;

      --shadow: 0 30px 90px rgba(16,26,21,.10);
      --shadow2: 0 14px 40px rgba(16,26,21,.10);
      --shadow3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;}
*{box-sizing:border-box;}
html,body{height:100%;}
body{margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color: var(--ink);
      background:
        radial-gradient(1200px 700px at 15% 0%, rgba(144,166,155,.18), transparent 60%),
        radial-gradient(900px 520px at 90% 10%, rgba(111,142,129,.14), transparent 60%),
        linear-gradient(180deg, #fff, var(--bg));
      overflow-x:hidden;}
a{color:inherit; text-decoration:none;}
.container{width:min(var(--max), calc(100% - 44px)); margin:0 auto;}
.grain{pointer-events:none;
      position:fixed; inset:0;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.10'/%3E%3C/svg%3E");
      mix-blend-mode:multiply;
      opacity:.16;
      z-index:0;}
.topbar{position:relative; z-index:60;
      background: rgba(255,255,255,.68);
      backdrop-filter: blur(14px);
      border-bottom: 1px solid rgba(16,26,21,.08);}
.topbar .row{display:flex; justify-content:space-between; align-items:center; gap:12px;
      padding: 10px 0;
      font-size: 12px;
      color: rgba(16,26,21,.70);
      flex-wrap:wrap;}
.chip{display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.90);
      box-shadow: var(--shadow3);}
.chip a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;
      color: rgba(16,26,21,.78);}
header{position:sticky; top:0; z-index:50;
      background: rgba(251,251,248,.72);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(16,26,21,.08);}
.nav{display:flex; align-items:center; justify-content:space-between;
      padding: 14px 0; gap:14px;}
.brand{display:flex; align-items:center; gap:12px;}
.mark{width:44px; height:44px;
      border-radius: 16px;
      background:
        radial-gradient(14px 14px at 30% 30%, rgba(255,255,255,.80), transparent 60%),
        linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      box-shadow: 0 18px 45px rgba(111,142,129,.20);
      position:relative; overflow:hidden;}
.mark:after{content:"";
      position:absolute; inset:-60%;
      background: conic-gradient(from 180deg, rgba(255,255,255,.35), transparent 25%, rgba(255,255,255,.18), transparent 60%);
      animation: spin 11s linear infinite;
      opacity:.85;}
@keyframes spin{ to{ transform:rotate(360deg); } }
.brand strong{display:block; font-weight:700; font-size:14px; letter-spacing:-.2px; line-height:1.1;}
.brand span{display:block; font-size:12px; color: rgba(16,26,21,.62); margin-top:2px;}
nav.links{display:flex; align-items:center; gap:10px;}
nav.links a{font-size: 13px;
      color: rgba(16,26,21,.70);
      padding: 10px 12px;
      border-radius: 12px;
      transition: background .18s ease, color .18s ease;}
nav.links a:hover{background: rgba(144,166,155,.14); color: rgba(16,26,21,.92);}
.btn{display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      padding: 12px 16px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.92);
      color: rgba(16,26,21,.90);
      box-shadow: var(--shadow3);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      user-select:none;
      white-space:nowrap;
      position:relative; overflow:hidden;}
.btn:hover{transform: translateY(-1px);
      border-color: rgba(16,26,21,.16);
      box-shadow: 0 18px 44px rgba(16,26,21,.10);}
.btn:active{transform: translateY(0) scale(.99);}
.btn-primary{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      border-color: rgba(111,142,129,.28);
      color: #07110d;
      font-weight: 700;}
.btn-primary:before{content:"";
      position:absolute; inset:-70%;
      background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.40), transparent 55%);
      transform: rotate(10deg);
      opacity:.55;}
.btn-primary > *{position:relative; z-index:1;}
.btn-ghost{background: rgba(255,255,255,.10);
      border-color: rgba(16,26,21,.14);
      color: rgba(16,26,21,.86);
      backdrop-filter: blur(10px);}
.icon{width:18px; height:18px; display:inline-block;}
.serif{font-family:Georgia,"Times New Roman",serif; font-weight: 400; letter-spacing: -0.4px;}
.kicker{font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);
      margin: 0 0 10px;}
.kicker.is-invert{color: rgba(255,255,255,.78);}
.heroA{position:relative; z-index:1; padding: 30px 0 20px;}
.heroA-grid{display:grid;
      grid-template-columns: .95fr 1.05fr; /* testo sx, foto dx */
      gap: 22px;
      align-items:center;}
.heroA-copy{padding: 10px 2px;}
.heroA-title{font-size: clamp(34px, 4vw, 52px);
      line-height: 1.06;
      color: rgba(16,26,21,.94);
      margin:0;}
.heroA-lead{margin-top: 14px;
      color: rgba(16,26,21,.70);
      font-size: 15.5px;
      line-height: 1.85;
      max-width: 58ch;}
.heroA-actions{margin-top: 18px;
      display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.fineprint{margin-top: 14px;
      display:flex; gap:10px; flex-wrap:wrap;
      color: rgba(16,26,21,.62);
      font-size: 12px;
      align-items:center;}
.pill{display:inline-flex; gap:8px; align-items:center;
      padding: 8px 12px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.82);
      box-shadow: var(--shadow3);}
.heroA-photo{position:relative;
      border-radius: var(--radius3);
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      background: var(--fog);
      box-shadow: var(--shadow);
      min-height: 380px;}
.heroA-photo img{width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      transform: scale(1.03);
      filter: contrast(1.02) saturate(1.02);}
.heroA-photo:after{content:"";
      position:absolute; inset:0;
      background: radial-gradient(900px 520px at 30% 10%, rgba(255,255,255,.34), transparent 60%);
      pointer-events:none;}
.heroA-caption{position:absolute; left:16px; bottom:16px; right:16px;
      display:flex; gap:10px; align-items:flex-start; justify-content:space-between;
      padding: 12px 14px;
      border-radius: 18px;
      border: 1px solid rgba(255,255,255,.20);
      background: rgba(255,255,255,.76);
      backdrop-filter: blur(14px);
      box-shadow: var(--shadow2);
      color: rgba(16,26,21,.78);
      font-size: 12px;
      line-height:1.45;}
.heroA-caption b{color: rgba(16,26,21,.88); font-weight:600;}
.heroB{position:relative; z-index:1; padding: 18px 0 8px;}
.heroB-shell{border-radius: var(--radius3);
      border: 1px solid rgba(16,26,21,.08);
      overflow:hidden;
      box-shadow: var(--shadow);
      background: linear-gradient(180deg, rgba(144,166,155,.96), rgba(144,166,155,.90));
      position:relative;}
.heroB-shell:before{content:"";
      position:absolute; inset:0;
      background:
        radial-gradient(1000px 420px at 15% 10%, rgba(255,255,255,.16), transparent 60%),
        radial-gradient(1200px 520px at 90% 0%, rgba(255,255,255,.12), transparent 60%);
      pointer-events:none;
      opacity:.95;}
.heroB-inner{position:relative;
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 18px;
      padding: 34px;
      min-height: 520px;
      align-items:center;
      z-index:1;}
.heroB h2{font-size: clamp(32px, 3.6vw, 52px);
      line-height: 1.06;
      color: rgba(255,255,255,.95);
      margin:0;}
.heroB p{margin-top: 14px;
      color: rgba(255,255,255,.82);
      font-size: 15px;
      line-height: 1.85;
      max-width: 62ch;}
.heroB-actions{margin-top: 18px;
      display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.btn-invert{background: rgba(255,255,255,.92);
      color: rgba(16,26,21,.92);
      border-color: rgba(255,255,255,.35);
      font-weight: 700;}
.heroB-media{display:flex; justify-content:flex-end; align-items:center; position:relative;}
.circleFrame{width: min(460px, 100%);
      aspect-ratio: 1 / 1.1;
      border-radius: 34px;
      overflow:hidden;
      border: 1px solid rgba(255,255,255,.22);
      box-shadow: 0 26px 90px rgba(0,0,0,.18);
      background: rgba(255,255,255,.14);
      position:relative;}
.circleFrame img{width:100%; height:100%;
      object-fit:cover;
      display:block;
      transform: scale(1.05);
      filter: contrast(1.02) saturate(1.03);
      clip-path: circle(66% at 62% 40%);}
.circleFrame:after{content:"";
      position:absolute; inset:0;
      background: radial-gradient(900px 520px at 35% 10%, rgba(255,255,255,.18), transparent 60%);
      pointer-events:none;}
section{padding: 44px 0; position:relative; z-index:1;}
.sectionHead{display:flex; align-items:flex-end; justify-content:space-between; gap:16px;
      margin-bottom: 16px;}
.sub{margin-top: 8px;
      color: rgba(16,26,21,.70);
      font-size: 14px;
      line-height: 1.85;
      max-width: 86ch;}
.grid3{display:grid; grid-template-columns: repeat(3, 1fr); gap: 14px;}
.card{border-radius: 22px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.90);
      box-shadow: var(--shadow3);
      padding: 16px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      position:relative; overflow:hidden;}
.card:before{content:"";
      position:absolute;
      inset:auto -70px -70px auto;
      width:240px; height:240px;
      background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.18), transparent 60%);
      opacity:.9;
      transform: rotate(16deg);
      pointer-events:none;}
.card:hover{transform: translateY(-3px);
      border-color: rgba(16,26,21,.12);
      box-shadow: 0 24px 70px rgba(16,26,21,.10);}
.card h4{margin:0 0 8px; font-size: 15px; letter-spacing:-.2px; position:relative; z-index:1;}
.card p{margin:0; font-size: 13.5px; color: rgba(16,26,21,.70); line-height: 1.75; position:relative; z-index:1;}
.card .cardLink{display:inline-block;
      margin-top: 10px;
      font-size: 12.5px;
      font-weight: 800;
      color: rgba(16,26,21,.84);
      text-decoration: underline;
      text-underline-offset: 4px;
      text-decoration-color: rgba(16,26,21,.18);
      position:relative; z-index:1;}
.trust{border-radius: var(--radius3);
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.88);
      box-shadow: var(--shadow3);
      padding: 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 12px;
      flex-wrap:wrap;}
.trust strong{font-size:13px; color: rgba(16,26,21,.85);}
.logos{display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.logoBox{width: 110px; height: 46px;
      border-radius: 14px;
      border: 1px dashed rgba(16,26,21,.18);
      background: rgba(242,244,241,.70);
      display:flex; align-items:center; justify-content:center;
      color: rgba(16,26,21,.55);
      font-size: 12px;}
.cv{display:grid;
      grid-template-columns: .95fr 1.05fr;
      gap: 16px;
      align-items:start;}
.cv-card{border-radius: var(--radius3);
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow);
      padding: 18px;
      overflow:hidden;
      position:relative;}
.cv-card:before{content:"";
      position:absolute;
      inset:auto -90px -90px auto;
      width:320px; height:320px;
      background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.18), transparent 60%);
      opacity:.9;
      transform: rotate(12deg);
      pointer-events:none;}
.cv-head{position:relative; z-index:1;}
.cv-head h3{margin:0;
      font-size: 22px;
      letter-spacing:-.2px;}
.cv-head p{margin-top:8px; color: rgba(16,26,21,.68); line-height:1.8; font-size: 13.5px;}
.cv-highlights{margin-top: 14px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      position:relative;
      z-index:1;}
.hl{border-radius: 18px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.86);
      box-shadow: var(--shadow3);
      padding: 12px;
      font-size: 12.5px;
      color: rgba(16,26,21,.74);
      line-height:1.55;}
.hl b{color: rgba(16,26,21,.88);}
.accordion{margin-top: 14px;
      display:grid;
      gap:10px;
      position:relative;
      z-index:1;}
details{border-radius: 18px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.86);
      box-shadow: var(--shadow3);
      padding: 12px 12px;}
summary{cursor:pointer;
      list-style:none;
      font-weight:600;
      font-size: 13px;
      color: rgba(16,26,21,.86);
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;}
summary::-webkit-details-marker{display:none;}
.chev{width: 28px; height: 28px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      display:flex; align-items:center; justify-content:center;
      background: rgba(242,244,241,.70);
      flex: 0 0 28px;
      transition: transform .2s ease;}
details[open] .chev{transform: rotate(180deg);}
.dbody{margin-top: 10px;
      color: rgba(16,26,21,.70);
      font-size: 13.2px;
      line-height:1.75;}
.dlist{margin: 0;
      padding-left: 18px;}
.dlist li{margin: 6px 0;}
.cv-photo{border-radius: var(--radius3);
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      background: var(--fog);
      box-shadow: var(--shadow);
      min-height: 520px;
      position:relative;}
.cv-photo img{width:100%; height:100%;
      object-fit:cover;
      display:block;
      transform: scale(1.03);
      filter: contrast(1.02) saturate(1.02);}
.cv-photo:after{content:"";
      position:absolute; inset:0;
      background: radial-gradient(900px 520px at 30% 10%, rgba(255,255,255,.28), transparent 60%);
      pointer-events:none;}
.faqGrid{display:grid; grid-template-columns: 1fr 1fr; gap: 12px;}
.logoBlock{border-radius: var(--radius3);
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.90);
  box-shadow: var(--shadow3);
  padding: 18px;
  overflow:hidden;
  position:relative;}
.logoBlock:before{content:"";
  position:absolute;
  inset:auto -120px -120px auto;
  width:380px; height:380px;
  background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.18), transparent 60%);
  opacity:.9;
  transform: rotate(12deg);
  pointer-events:none;}
.logoHead{position:relative; z-index:1;}
.logoGrid{margin-top: 14px;
  display:grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
  position:relative;
  z-index:1;}
.lItem{height: 70px;
  border-radius: 18px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.lItem:after{content:"";
  position:absolute; inset:-70%;
  background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.18), transparent 55%);
  transform: rotate(10deg);
  opacity:.9;
  pointer-events:none;}
.lItem:hover{transform: translateY(-2px);
  border-color: rgba(16,26,21,.14);
  box-shadow: 0 22px 60px rgba(16,26,21,.10);}
.lBadge{font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(16,26,21,.62);
  position:relative;
  z-index:1;}
.logoNote{margin-top: 12px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  position:relative;
  z-index:1;}
@media (max-width: 980px){.logoGrid{grid-template-columns: repeat(3, 1fr);}}
@media (max-width: 520px){.logoGrid{grid-template-columns: repeat(2, 1fr);}
.lItem{height: 64px;}}
.maps{border-radius: var(--radius3);
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.90);
      box-shadow: var(--shadow);
      overflow:hidden;
      padding: 18px;
      display:grid;
      grid-template-columns: 1fr 1.2fr;
      gap: 16px;
      align-items:center;}
.mapGrid{display:grid; grid-template-columns: 1fr 1fr; gap: 12px;}
.mapCard{border-radius: 22px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.96);
      box-shadow: var(--shadow3);
      position:relative;
      min-height: 200px;}
.mapCard iframe{width:100%; height: 200px; border:0;}
.mapMeta{position:absolute; left:10px; right:10px; bottom:10px;
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(16,26,21,.08);
      backdrop-filter: blur(12px);
      border-radius: 18px;
      padding: 10px 10px;
      display:flex; justify-content:space-between; gap:10px; align-items:center;
      color: rgba(16,26,21,.82);
      font-size: 12px;
      box-shadow: var(--shadow3);}
.mapMeta a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;
      white-space:nowrap;}
.cta{border-radius: var(--radius3);
      border: 1px solid rgba(16,26,21,.08);
      background:
        radial-gradient(900px 420px at 15% 0%, rgba(144,166,155,.22), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.78));
      box-shadow: var(--shadow);
      padding: 20px;
      display:flex; justify-content:space-between; align-items:center; gap:14px;
      flex-wrap:wrap;}
.cta h3{margin:0; font-size: 22px;}
.cta p{margin-top:8px; color: rgba(16,26,21,.70); line-height:1.8; font-size: 13.5px;}
footer{margin-top: 34px;
      border-top: 1px solid rgba(16,26,21,.10);
      padding: 28px 0 44px;
      color: rgba(16,26,21,.70);
      font-size: 12px;
      background: rgba(255,255,255,.55);
      position:relative;
      z-index:1;}
.foot{display:grid;
      grid-template-columns: 1.2fr .9fr .9fr;
      gap: 16px;
      align-items:start;}
.foot h5{margin:0 0 10px;
      font-size: 12px;
      letter-spacing:.14em;
      text-transform: uppercase;
      color: rgba(16,26,21,.62);}
.foot small{display:block; color: rgba(16,26,21,.62); line-height:1.7;}
.foot a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
.newsletter{border-radius: 20px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow3);
      padding: 14px;}
.newsletter label{display:block; font-size: 12px; color: rgba(16,26,21,.70); margin-bottom: 8px;}
.row{display:flex; gap:10px; align-items:center;}
.input{flex:1;
      height: 42px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.98);
      padding: 0 14px;
      outline:2px solid transparent;
      font-family: inherit;
      color: rgba(16,26,21,.86);}
.bottomline{margin-top: 16px;
      display:flex; justify-content:space-between; gap: 14px; flex-wrap:wrap;
      color: rgba(16,26,21,.58);
      border-top: 1px solid rgba(16,26,21,.08);
      padding-top: 14px;}
.magnetic{will-change: transform;}
@media (max-width: 980px){nav.links{display:none;}
.heroA-grid{grid-template-columns: 1fr;}
.heroB-inner{grid-template-columns: 1fr; padding: 22px; min-height: unset;}
.circleFrame{width:100%; max-width: 560px; margin: 0 auto;}
.grid3{grid-template-columns: 1fr;}
.cv{grid-template-columns: 1fr;}
.cv-highlights{grid-template-columns: 1fr;}
.maps{grid-template-columns: 1fr;}
.mapGrid{grid-template-columns: 1fr;}
.faqGrid{grid-template-columns: 1fr;}
.foot{grid-template-columns: 1fr;}}
@media (prefers-reduced-motion: reduce){.mark:after{animation:none;}
.btn, .card{transition:none;}}
.srOnly{position:absolute;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;}
.navToggle{display:none;
  width:44px;height:44px;
  border-radius:14px;
  border:1px solid rgba(16,26,21,.12);
  background:rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  align-items:center;
  justify-content:center;}
.navToggleBars{width:18px;height:12px;
  background: linear-gradient(
    to bottom,
    rgba(16,26,21,.78) 0,
    rgba(16,26,21,.78) 2px,
    transparent 2px,
    transparent 5px,
    rgba(16,26,21,.78) 5px,
    rgba(16,26,21,.78) 7px,
    transparent 7px,
    transparent 10px,
    rgba(16,26,21,.78) 10px,
    rgba(16,26,21,.78) 12px
  );
  border-radius:3px;}
.drawer[hidden]{display:none;}
.drawer{position:fixed; inset:0; z-index:9999;}
.drawerBackdrop{position:absolute; inset:0;
  background:rgba(0,0,0,.28);
  backdrop-filter: blur(4px);}
.drawerInner{position:absolute;
  top:10px; right:10px; left:10px;
  margin-left:auto;
  max-width: 520px;
  border-radius: 22px;
  border:1px solid rgba(16,26,21,.10);
  background:rgba(255,255,255,.92);
  box-shadow: 0 30px 90px rgba(16,26,21,.18);
  overflow:hidden;}
.drawerTop{display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 14px;
  border-bottom: 1px solid rgba(16,26,21,.08);}
.drawerTitle{font-weight:700; letter-spacing:-.2px;}
.drawerClose{width:40px; height:40px;
  border-radius: 14px;
  border: 1px solid rgba(16,26,21,.12);
  background: rgba(255,255,255,.92);
  font-size: 22px;
  line-height: 1;}
.drawerNav{padding: 12px 14px;}
.drawerLinks{list-style:none; padding:0; margin:0; display:grid; gap:8px;}
.drawerLinks a{display:block;
  padding: 12px 12px;
  border-radius: 14px;
  color: rgba(16,26,21,.82);
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.88);}
.drawerLinks a:hover{background: rgba(144,166,155,.14);}
.drawerCta{padding: 14px; display:flex; gap:10px; flex-wrap:wrap; border-top: 1px solid rgba(16,26,21,.08);}
@media (max-width: 980px){nav.links{display:none ;}
.navToggle{display:inline-flex;}}
input, textarea, select, button{font: inherit;}
.cmplz-manage-consent{display:inline-block;
  margin-top:10px;}
.olFaqHead{margin-top: 8px; color: var(--muted); line-height: 1.8;}
.olAccGroup{display:grid; gap: 10px; margin-top: 14px;}
.olAcc{border-radius: 26px;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  overflow:hidden;}
.olAccBtn{width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 14px 16px;
  border:0;
  background: transparent;
  cursor:pointer;
  text-align:left;
  color: rgba(16,26,21,.92);
  font-family: inherit;}
.olAccBtn b{font-size: 14px; letter-spacing: -.2px; font-weight: 700;}
.olAccChev{width:34px; height:34px;
  border-radius: 14px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(242,244,241,.60);
  display:flex; align-items:center; justify-content:center;
  box-shadow: var(--shadow3);
  flex: 0 0 auto;
  transition: transform .25s ease;}
.olAcc.open .olAccChev{transform: rotate(180deg);}
.olAccPanel{height:0;
  overflow:hidden;
  border-top: 1px solid rgba(16,26,21,.08);
  background: rgba(242,244,241,.55);
  transition: height .25s ease;}
.olAccInner{padding: 12px 16px 16px;
  color: rgba(16,26,21,.72);
  font-size: 14px;
  line-height: 1.9;}
header nav.links .navLinks{list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:10px;}
header nav.links .navLinks > li{margin:0; padding:0;}
header nav.links .navLinks > li > a{display:inline-flex;
  align-items:center;
  font-size:13px;
  color:rgba(16,26,21,.70);
  padding:10px 12px;
  border-radius:999px;
  transition:.18s;}
header nav.links .navLinks > li > a:hover,
header nav.links .navLinks > li.current-menu-item > a,
header nav.links .navLinks > li.current_page_item > a,
header nav.links .navLinks > li.current-menu-ancestor > a,
header nav.links .navLinks > li.current_page_ancestor > a{background:rgba(144,166,155,.14);
  color:rgba(16,26,21,.92);}
header .nav .navCta{padding:10px 14px;
  font-size:13px;}
.olIndex{display:flex; flex-wrap:wrap;
  gap: 10px;
  margin-top: 12px;}
.olIndex a{display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow3);
  color: rgba(16,26,21,.92);
  text-decoration:none;
  font-weight: 650;
  font-size: 13px;}
.olIndex a:hover{transform: translateY(-1px);}
.olCards{display:grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 14px;}
.olCard{border-radius: 28px;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  padding: 16px;}
.olCard h3{margin:0; font-size: 16px; letter-spacing: -.2px;}
.olCard h3 a{color: inherit; text-decoration:none;}
.olCard h3 a:hover{text-decoration:underline;}
.olCard p{margin: 10px 0 0; color: var(--muted); line-height: 1.85; font-size: 14px;}
.olCard .olIcon{width: 44px; height: 44px;
  border-radius: 18px;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(242,244,241,.70);
  display:flex; align-items:center; justify-content:center;
  margin-bottom: 10px;
  overflow:hidden;}
.olFilters{display:flex; flex-wrap:wrap; gap: 10px;
  margin-top: 12px;}
.olFilters button{appearance:none;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow3);
  border-radius: 999px;
  padding: 10px 12px;
  cursor:pointer;
  font-weight: 650;
  font-size: 13px;
  color: rgba(16,26,21,.92);}
.olFilters button.active{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
  color: #07110d;
  border-color: rgba(16,26,21,.08);}
.olGallery{margin-top: 14px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;}
.olGalleryItem{border-radius: 26px;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  overflow:hidden;}
.olGalleryItem img{width:100%;
  height: 220px;
  object-fit: cover;
  display:block;}
.olGalleryMeta{padding: 12px 14px;
  color: rgba(16,26,21,.72);
  font-size: 13px;}
:root{--bg:#fbfbf8;
      --paper:#ffffff;
      --ink:#101a15;
      --muted: rgba(16,26,21,.72);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;
      --fog:#f2f4f1;

      --r1:18px;
      --r2:26px;
      --r3:44px;

      --sh1: 0 30px 90px rgba(16,26,21,.10);
      --sh2: 0 18px 60px rgba(16,26,21,.10);
      --sh3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;}
.topbar{position:relative; z-index:60;
      background: rgba(255,255,255,.70);
      backdrop-filter: blur(14px);
      border-bottom: 1px solid rgba(16,26,21,.08);}
.topbar .row{display:flex; justify-content:space-between; align-items:center; gap:12px;
      padding: 10px 0;
      font-size: 12px;
      color: var(--muted2);
      flex-wrap:wrap;}
.chip{display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);}
.btn{display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      padding: 12px 16px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.92);
      color: rgba(16,26,21,.90);
      box-shadow: var(--sh3);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      user-select:none;
      white-space:nowrap;
      position:relative; overflow:hidden;}
.btn-primary{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      border-color: rgba(111,142,129,.28);
      color: #07110d;
      font-weight: 800;
      letter-spacing: .02em;}
.btn-ghost{background: rgba(255,255,255,.08);
      border-color: rgba(16,26,21,.14);
      color: rgba(16,26,21,.86);
      backdrop-filter: blur(10px);}
.btn-sm{padding: 10px 14px; font-size: 13px;}
main{position:relative; z-index:1;}
.page{padding: 18px 0 10px;}
.hero{border-radius: 54px;
      border: 1px solid rgba(16,26,21,.08);
      box-shadow: var(--sh1);
      overflow:hidden;
      background:
        radial-gradient(980px 480px at 18% 0%, rgba(144,166,155,.26), transparent 62%),
        radial-gradient(760px 360px at 88% 12%, rgba(111,142,129,.18), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.74));}
.heroInner{padding: 22px;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap: 18px;
      align-items:stretch;}
.heroCard{border-radius: 34px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh2);
      padding: 18px;
      position:relative;
      overflow:hidden;}
.heroCard:before{content:"";
      position:absolute;
      inset:auto -120px -120px auto;
      width:380px; height:380px;
      background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.18), transparent 60%);
      opacity:.9;
      transform: rotate(10deg);
      pointer-events:none;}
.heroCard *{position:relative; z-index:1;}
.title{margin:0;
      font-size: clamp(34px, 4.1vw, 56px);
      line-height: 1.03;
      color: rgba(16,26,21,.94);}
.lead{margin: 10px 0 0;
      color: rgba(16,26,21,.72);
      font-size: 15.5px;
      line-height: 1.85;
      max-width: 68ch;}
.actionRow{margin-top: 14px;
      display:flex;
      gap: 10px;
      flex-wrap:wrap;
      align-items:center;}
.heroMeta{margin-top: 14px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;}
.meta{border-radius: 22px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(242,244,241,.58);
      box-shadow: var(--sh3);
      padding: 12px;
      min-height: 82px;}
.meta b{display:block; font-size: 13px; color: rgba(16,26,21,.92);}
.meta span{display:block; margin-top: 5px; font-size: 12px; color: rgba(16,26,21,.64); line-height:1.6;}
.toc{margin-top: 12px;
      display:flex;
      gap: 8px;
      flex-wrap:wrap;}
.pill{display:inline-flex; align-items:center; justify-content:center;
      padding: 9px 12px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);
      font-size: 12px;
      color: rgba(16,26,21,.70);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.pill:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.14); box-shadow: 0 18px 44px rgba(16,26,21,.10); color: rgba(16,26,21,.90);}
.heroVisual{border-radius: 34px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh2);
      overflow:hidden;
      position:relative;
      min-height: 340px;}
.heroVisual img{width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      transform: scale(1.04);}
.heroOverlay{position:absolute;
      left:14px; right:14px; bottom:14px;
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(16,26,21,.08);
      backdrop-filter: blur(12px);
      border-radius: 22px;
      padding: 12px 12px;
      box-shadow: var(--sh3);
      display:flex;
      justify-content:space-between;
      align-items:flex-end;
      gap: 10px;
      flex-wrap:wrap;}
.heroOverlay b{display:block; font-size: 13px;}
.heroOverlay span{display:block; margin-top:4px; font-size: 12px; color: rgba(16,26,21,.62); line-height:1.55;}
section{padding: 34px 0; position:relative; z-index:1;}
.contentGrid{display:grid;
      grid-template-columns: 1fr .92fr;
      gap: 18px;
      align-items:start;}
.paper{border-radius: 34px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      padding: 18px;
      position:relative;
      overflow:hidden;}
.paper:before{content:"";
      position:absolute;
      inset:auto -120px -120px auto;
      width:380px; height:380px;
      background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.14), transparent 62%);
      opacity:.9;
      transform: rotate(12deg);
      pointer-events:none;}
.paper *{position:relative; z-index:1;}
.h2{margin:0; font-size: 26px; line-height:1.2;}
.h3{margin:0; font-size: 18px; line-height:1.3;}
.prose{margin-top: 12px;
      color: rgba(16,26,21,.74);
      font-size: 14.5px;
      line-height: 2.0;}
.prose p{margin:0 0 12px;}
.prose ul{margin: 0 0 12px 18px; padding:0;}
.prose li{margin: 8px 0;}
.callout{margin-top: 12px;
      border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(242,244,241,.60);
      box-shadow: var(--sh3);
      padding: 14px;
      color: rgba(16,26,21,.74);
      font-size: 13.5px;
      line-height:1.9;}
.callout b{color: rgba(16,26,21,.90);}
.stack{display:grid; gap: 12px;}
.sideCard{border-radius: 28px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      padding: 16px;
      position:relative;
      overflow:hidden;}
.sideCard:before{content:"";
      position:absolute;
      inset:auto -90px -90px auto;
      width:300px; height:300px;
      background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.16), transparent 60%);
      opacity:.9;
      transform: rotate(14deg);
      pointer-events:none;}
.sideCard *{position:relative; z-index:1;}
.facts{margin-top: 12px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;}
.fact{border-radius: 20px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(242,244,241,.58);
      box-shadow: var(--sh3);
      padding: 12px;
      min-height: 74px;}
.fact b{display:block; font-size: 12.5px;}
.fact span{display:block; margin-top: 4px; font-size: 12px; color: rgba(16,26,21,.62); line-height:1.55;}
.timeline{margin-top: 12px; display:grid; gap: 10px;}
.tItem{border-radius: 24px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      padding: 14px;
      display:flex;
      gap: 12px;
      align-items:flex-start;}
.tDot{width: 34px; height: 34px;
      border-radius: 14px;
      background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      box-shadow: 0 16px 40px rgba(111,142,129,.20);
      flex:0 0 auto;
      display:flex; align-items:center; justify-content:center;
      font-weight: 900;
      color:#07110d;}
.tItem b{display:block; font-size: 13px;}
.tItem span{display:block; margin-top: 4px; font-size: 12.5px; color: rgba(16,26,21,.66); line-height:1.7;}
.faqWrap{display:grid; gap: 10px; margin-top: 14px;}
.faq{border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      overflow:hidden;}
.faqBtn{width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 14px;
      padding: 14px 16px;
      border:0;
      background: transparent;
      cursor:pointer;
      text-align:left;
      color: rgba(16,26,21,.92);
      font-family: inherit;}
.faqBtn b{font-size: 14px; letter-spacing: -.2px; font-weight: 700;}
.chev{width:34px; height:34px;
      border-radius: 14px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(242,244,241,.60);
      display:flex; align-items:center; justify-content:center;
      box-shadow: var(--sh3);
      flex: 0 0 auto;
      transition: transform .25s ease;}
.faq.open .chev{transform: rotate(180deg);}
.faqPanel{height:0;
      overflow:hidden;
      border-top: 1px solid rgba(16,26,21,.08);
      background: rgba(242,244,241,.55);}
.faqInner{padding: 12px 16px 16px;
      color: rgba(16,26,21,.72);
      font-size: 13.5px;
      line-height: 1.9;}
.ctaFinal{border-radius: var(--r3);
      border: 1px solid rgba(16,26,21,.08);
      background:
        radial-gradient(900px 340px at 20% 0%, rgba(144,166,155,.22), transparent 60%),
        rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      padding: 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 14px;
      flex-wrap:wrap;}
.ctaFinal .text{max-width: 72ch;
      color: rgba(16,26,21,.74);
      line-height:1.8;
      font-size: 14px;}
.logoBlock{border-radius: var(--r3);
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.90);
      box-shadow: var(--sh3);
      padding: 18px;
      overflow:hidden;
      position:relative;}
.lItem{height: 70px;
      border-radius: 18px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      display:flex;
      align-items:center;
      justify-content:center;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.lBadge{font-size: 12px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(16,26,21,.62);}
footer{margin-top: 18px;
      border-top: 1px solid rgba(16,26,21,.10);
      padding: 28px 0 44px;
      color: rgba(16,26,21,.70);
      font-size: 12px;
      background: rgba(255,255,255,.55);
      position:relative;
      z-index:1;}
.newsletter{border-radius: 20px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--sh3);
      padding: 14px;}
.nInput{flex:1;
      height: 42px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.98);
      padding: 0 14px;
      outline:2px solid transparent;
      font-family: inherit;
      color: rgba(16,26,21,.86);}
@media (max-width: 980px){.heroInner{grid-template-columns: 1fr;}
.heroMeta{grid-template-columns: 1fr;}
.contentGrid{grid-template-columns: 1fr;}
.facts{grid-template-columns: 1fr;}}
:root{--bg:#fbfbf8;
      --paper:#ffffff;
      --ink:#101a15;
      --muted: rgba(16,26,21,.72);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;

      --sh1: 0 30px 90px rgba(16,26,21,.10);
      --sh2: 0 18px 60px rgba(16,26,21,.10);
      --sh3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;
      --rHero:54px;}
.grain{pointer-events:none;
      position:fixed; inset:0;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.10'/%3E%3C/svg%3E");
      mix-blend-mode:multiply;
      opacity:.12;
      z-index:0;}
.topbar a{color: rgba(16,26,21,.76);
      text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
.topbar .sep{opacity:.35; padding:0 10px;}
nav.links a{font-size: 13px;
      color: rgba(16,26,21,.70);
      padding: 10px 12px;
      border-radius: 999px;
      transition: background .18s ease, color .18s ease;}
nav.links a.active{background: rgba(144,166,155,.16); color: rgba(16,26,21,.92);}
.hero{border-radius: var(--rHero);
      border: 1px solid rgba(16,26,21,.08);
      box-shadow: var(--sh1);
      overflow:hidden;
      background:
        radial-gradient(980px 480px at 18% 0%, rgba(144,166,155,.20), transparent 62%),
        radial-gradient(760px 360px at 88% 12%, rgba(111,142,129,.14), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.72));}
.heroInner{padding: 26px;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap: 22px;
      align-items:center;}
.lead{margin: 12px 0 0;
      color: rgba(16,26,21,.72);
      font-size: 15.5px;
      line-height: 1.9;
      max-width: 70ch;}
.actionRow{margin-top: 18px;
      display:flex;
      gap: 10px;
      flex-wrap:wrap;
      align-items:center;}
.heroMeta{margin-top: 16px;
      display:grid;
      gap: 10px;
      padding-left: 14px;
      border-left: 1px solid rgba(16,26,21,.10);}
.metaLine{display:flex;
      gap: 10px;
      align-items:flex-start;
      color: rgba(16,26,21,.72);
      font-size: 13.5px;
      line-height: 1.8;}
.dot{width: 9px; height: 9px;
      margin-top: 7px;
      border-radius: 999px;
      background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      box-shadow: 0 10px 22px rgba(111,142,129,.20);
      flex:0 0 auto;}
.metaLine b{color: rgba(16,26,21,.92);}
.heroVisual{border-radius: 40px;
      border: 1px solid rgba(16,26,21,.08);
      overflow:hidden;
      box-shadow: var(--sh2);
      background: rgba(255,255,255,.92);
      position:relative;
      min-height: 360px;}
.heroVisual img{width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      transform: scale(1.05);
      filter: saturate(1.03) contrast(1.02);}
.heroOverlay{position:absolute;
      left:16px; right:16px; bottom:16px;
      border-radius: 999px;
      padding: 10px 12px 10px 14px;
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(16,26,21,.08);
      backdrop-filter: blur(12px);
      box-shadow: var(--sh3);
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 10px;
      flex-wrap:wrap;}
.heroOverlay b{font-size: 13px;}
.heroOverlay span{font-size: 12px; color: rgba(16,26,21,.62);}
.layout{display:grid;
      grid-template-columns: 300px 1fr;
      gap: 34px;
      align-items:start;}
.index{position:sticky;
      top: 96px;
      padding: 16px 0;}
.index h3{margin:0;
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);}
.indexNav{margin-top: 12px;
      display:grid;
      gap: 10px;}
.iLink{display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 12px;
      padding: 10px 0;
      border-bottom: 1px solid rgba(16,26,21,.10);
      color: rgba(16,26,21,.72);
      transition: color .18s ease;}
.iLink:hover{color: rgba(16,26,21,.92);}
.iLink small{color: rgba(16,26,21,.55); font-size: 12px;}
.iLink .bullet{width: 8px; height: 8px;
      border-radius: 999px;
      background: rgba(16,26,21,.18);
      box-shadow: none;
      flex:0 0 auto;
      transition: background .18s ease, transform .18s ease;}
.iLink.active .bullet{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      transform: scale(1.15);
      box-shadow: 0 12px 26px rgba(111,142,129,.22);}
.sectionHead{display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap: 14px;
      padding-bottom: 14px;
      border-bottom: 1px solid rgba(16,26,21,.10);
      margin-bottom: 18px;}
.sectionHead h2{margin:0;
      font-size: 30px;
      line-height:1.15;}
.sectionHead p{margin:0;
      color: rgba(16,26,21,.66);
      font-size: 14px;
      line-height:1.8;
      max-width: 58ch;}
.block{padding: 22px 0;
      border-bottom: 1px solid rgba(16,26,21,.10);}
.block:last-child{border-bottom:0; padding-bottom:0;}
.block h3{margin:0;
      font-size: 22px;
      letter-spacing: -.3px;
      line-height: 1.25;}
.block .sub{margin: 8px 0 0;
      color: rgba(16,26,21,.64);
      font-size: 13px;
      line-height: 1.7;
      max-width: 70ch;}
.split{margin-top: 16px;
      display:grid;
      grid-template-columns: 1fr 320px;
      gap: 22px;
      align-items:start;}
.prose{color: rgba(16,26,21,.74);
      font-size: 14.5px;
      line-height: 2.0;}
figure{margin:0;
      border-radius: 28px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      box-shadow: var(--sh3);
      background: rgba(255,255,255,.92);}
figure img{width:100%;
      height: 240px;
      object-fit:cover;
      display:block;
      filter: grayscale(.05) contrast(1.02);}
figcaption{padding: 10px 12px 12px;
      font-size: 12px;
      color: rgba(16,26,21,.60);
      line-height: 1.6;}
.note{margin-top: 12px;
      padding-left: 14px;
      border-left: 2px solid rgba(111,142,129,.35);
      color: rgba(16,26,21,.70);
      font-size: 13.5px;
      line-height: 1.9;}
.logoBlock{margin-top: 26px;
      padding: 18px 0;
      border-top: 1px solid rgba(16,26,21,.10);
      border-bottom: 1px solid rgba(16,26,21,.10);}
.logoHead{display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap: 14px;}
.logoHead h2{margin:0;
      font-size: 22px;
      line-height:1.2;}
.logoHead p{margin:0;
      color: rgba(16,26,21,.66);
      font-size: 13.5px;
      line-height:1.8;
      max-width: 56ch;}
.logoRow{margin-top: 14px;
      display:flex;
      gap: 16px;
      flex-wrap:wrap;
      align-items:center;
      justify-content:space-between;
      opacity:.92;}
.logo{padding: 10px 14px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.86);
      box-shadow: var(--sh3);
      font-size: 12px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(16,26,21,.62);}
.newsletter{border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.88);
      box-shadow: var(--sh3);
      padding: 12px;
      display:flex;
      gap:10px;
      align-items:center;}
.nInput{flex:1;
      height: 40px;
      border-radius: 999px;
      border: 0;
      background: transparent;
      padding: 0 10px;
      outline:2px solid transparent;
      font-family: inherit;
      color: rgba(16,26,21,.86);}
@media (max-width: 1050px){.layout{grid-template-columns: 1fr;}
.index{position:relative; top:0; padding:0;}
.indexNav{grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px;}
.iLink{border-bottom: 1px solid rgba(16,26,21,.10);}}
@media (max-width: 980px){.split{grid-template-columns: 1fr;}
.logoHead{flex-direction:column; align-items:flex-start;}
figure img{height: 220px;}}
:root{--bg:#fbfbf8;
      --paper:#ffffff;
      --ink:#101a15;
      --muted: rgba(16,26,21,.72);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;

      --sh1: 0 30px 90px rgba(16,26,21,.10);
      --sh2: 0 18px 60px rgba(16,26,21,.10);
      --sh3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;
      --rHero:54px;
      --r:28px;}
.hero{border-radius: var(--rHero);
      border: 1px solid rgba(16,26,21,.08);
      box-shadow: var(--sh1);
      overflow:hidden;
      background:
        radial-gradient(980px 480px at 18% 0%, rgba(144,166,155,.18), transparent 62%),
        radial-gradient(760px 360px at 88% 12%, rgba(111,142,129,.12), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.72));}
.layout{display:grid;
      grid-template-columns: 320px 1fr;
      gap: 34px;
      align-items:start;}
.iLink .bullet{width: 8px; height: 8px;
      border-radius: 999px;
      background: rgba(16,26,21,.18);
      transition: background .18s ease, transform .18s ease;
      flex:0 0 auto;}
.block .sub{margin: 8px 0 0;
      color: rgba(16,26,21,.64);
      font-size: 13px;
      line-height: 1.7;
      max-width: 78ch;}
.split{margin-top: 16px;
      display:grid;
      grid-template-columns: 1fr 340px;
      gap: 22px;
      align-items:start;}
figure{margin:0;
      border-radius: var(--r);
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      box-shadow: var(--sh3);
      background: rgba(255,255,255,.92);}
figure img{width:100%;
      height: 260px;
      object-fit:cover;
      display:block;
      filter: grayscale(.06) contrast(1.02);}
.cols{margin-top: 10px;
      columns: 2;
      column-gap: 28px;}
.cols li{break-inside: avoid;}
.hrSoft{height:1px; background: rgba(16,26,21,.10);
      margin: 16px 0;}
.figureLite{border-radius: var(--r);
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.65);
      box-shadow: var(--sh3);
      padding: 14px;}
.figureLite .ph{width:100%;
      height: 210px;
      border-radius: 22px;
      border: 1px dashed rgba(16,26,21,.18);
      display:flex; align-items:center; justify-content:center;
      color: rgba(16,26,21,.55);
      font-size: 12px;
      text-align:center;
      padding: 14px;
      background: radial-gradient(600px 220px at 30% 0%, rgba(144,166,155,.14), transparent 60%);}
@media (max-width: 1050px){.split{grid-template-columns: 1fr;}
.cols{columns: 1;}
figure img{height: 230px;}}
.side{position:sticky;
      top: 96px;
      padding: 16px 0;}
.side h3{margin:0;
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);}
.chips{margin-top: 12px;
      display:flex;
      flex-wrap:wrap;
      gap:10px;}
.chip{border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.84);
      box-shadow: var(--sh3);
      border-radius: 999px;
      padding: 10px 12px;
      font-size: 12.5px;
      color: rgba(16,26,21,.70);
      cursor:pointer;
      transition: transform .16s ease, border-color .16s ease, background .16s ease;
      user-select:none;}
.chip:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.16);}
.chip.active{background: rgba(144,166,155,.16);
      border-color: rgba(111,142,129,.24);
      color: rgba(16,26,21,.92);}
.miniDisclaimer{margin-top: 14px;
      padding-left: 14px;
      border-left: 2px solid rgba(111,142,129,.32);
      color: rgba(16,26,21,.66);
      font-size: 12.8px;
      line-height: 1.85;}
.list{display:grid; gap: 0;}
.list .item{padding: 22px 0;
      border-bottom: 1px solid rgba(16,26,21,.10);}
.list .item:last-child{border-bottom:0; padding-bottom: 0;}
.itemHead{display:flex;
      align-items:baseline;
      justify-content:space-between;
      gap: 14px;
      flex-wrap:wrap;}
.item h3{margin:0;
      font-size: 22px;
      letter-spacing: -.3px;
      line-height: 1.25;}
.badge{font-size: 12px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(16,26,21,.58);
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);}
.item .desc{margin: 10px 0 0;
      color: rgba(16,26,21,.72);
      font-size: 14.5px;
      line-height: 2.0;
      max-width: 80ch;}
.mediaRow{margin-top: 14px;
      display:grid;
      grid-template-columns: 220px 1fr;
      gap: 18px;
      align-items:start;}
figure img{width:100%;
      height: 210px;
      object-fit:cover;
      display:block;
      filter: grayscale(.07) contrast(1.02);}
.steps{margin: 0;
      padding-left: 18px;
      color: rgba(16,26,21,.70);
      font-size: 13.5px;
      line-height: 1.9;}
.steps li{margin: 8px 0;}
.videoWrap{margin-top: 26px;
      padding-top: 22px;
      border-top: 1px solid rgba(16,26,21,.10);}
.videoHead{display:flex; align-items:flex-end; justify-content:space-between; gap: 14px; flex-wrap:wrap;}
.videoHead h3{margin:0; font-size: 24px;}
.videoHead p{margin:0; color: rgba(16,26,21,.66); font-size: 13.8px; line-height:1.8; max-width: 70ch;}
.video{margin-top: 14px;
      border-radius: 34px;
      border: 1px solid rgba(16,26,21,.10);
      overflow:hidden;
      box-shadow: var(--sh2);
      background: #000;
      position:relative;
      aspect-ratio: 16/9;}
.video iframe{width:100%; height:100%; border:0; display:block;}
.downloadRow{margin-top: 18px;
      display:flex; align-items:center; justify-content:space-between; gap: 14px; flex-wrap:wrap;
      padding: 16px 0 0;
      border-top: 1px solid rgba(16,26,21,.10);}
.downloadRow p{margin:0;
      color: rgba(16,26,21,.70);
      font-size: 14px;
      line-height:1.8;
      max-width: 72ch;}
@media (max-width: 1050px){.side{position:relative; top:0; padding:0;}}
@media (max-width: 980px){.mediaRow{grid-template-columns: 1fr;}}
:root{--bg:#fbfbf8;
      --paper:#ffffff;
      --ink:#101a15;
      --muted: rgba(16,26,21,.72);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;

      --sh1: 0 30px 90px rgba(16,26,21,.10);
      --sh2: 0 18px 60px rgba(16,26,21,.10);
      --sh3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;
      --rHero:54px;
      --r:26px;}
.heroInner{padding: 26px;
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 22px;
      align-items:stretch;}
.panel{border-radius: 40px;
      border: 1px solid rgba(16,26,21,.08);
      overflow:hidden;
      box-shadow: var(--sh2);
      background: rgba(255,255,255,.84);
      padding: 18px;
      display:flex;
      flex-direction:column;
      gap: 12px;
      min-height: 100%;}
.searchWrap{border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.92);
      border-radius: 999px;
      padding: 10px 12px;
      display:flex; gap:10px; align-items:center;
      box-shadow: var(--sh3);}
.searchWrap input{border:0; outline:2px solid transparent; background:transparent;
      width:100%;
      font-family: inherit;
      font-size: 14px;
      color: rgba(16,26,21,.86);}
.tags{display:flex; flex-wrap:wrap; gap:8px;}
.tag{font-size: 12px;
      padding: 8px 12px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      color: rgba(16,26,21,.72);
      background: rgba(255,255,255,.70);
      cursor:pointer;
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
      user-select:none;}
.tag:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.14); background: rgba(144,166,155,.12);}
.tag.active{background: rgba(144,166,155,.18);
      border-color: rgba(111,142,129,.22);
      color: rgba(16,26,21,.92);}
.layout{display:grid;
      grid-template-columns: 1fr 320px;
      gap: 34px;
      align-items:start;}
.newsList{display:grid; gap: 16px;}
.post{border-top: 1px solid rgba(16,26,21,.10);
      padding-top: 16px;
      display:grid;
      grid-template-columns: 220px 1fr;
      gap: 16px;
      align-items:start;}
.post:first-child{border-top:0; padding-top:0;}
.thumb{border-radius: var(--r);
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      box-shadow: var(--sh3);
      background: rgba(255,255,255,.92);
      aspect-ratio: 4/3;}
.thumb img{width:100%; height:100%; object-fit:cover; display:block; transform: scale(1.02);}
.meta{display:flex; flex-wrap:wrap; gap: 10px;
      color: rgba(16,26,21,.58);
      font-size: 12.5px;
      align-items:center;}
.chip{font-size: 12px;
      padding: 6px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.70);
      color: rgba(16,26,21,.70);}
.post h3{margin: 8px 0 6px;
      font-size: 20px;
      letter-spacing: -.25px;
      line-height: 1.25;}
.excerpt{margin:0;
      color: rgba(16,26,21,.72);
      font-size: 14px;
      line-height: 1.9;
      max-width: 82ch;}
.postActions{margin-top: 12px;
      display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.side{position:sticky;
      top: 96px;
      display:grid;
      gap: 14px;
      padding-top: 8px;}
.box{border: 1px solid rgba(16,26,21,.10);
      border-radius: 28px;
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);
      padding: 14px;}
.box h4{margin:0 0 10px;
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);}
.miniList{display:grid; gap:10px;}
.mini a{display:flex; gap:10px; align-items:flex-start;
      padding: 10px 0;
      border-bottom: 1px solid rgba(16,26,21,.10);
      color: rgba(16,26,21,.72);
      transition: color .18s ease;}
.mini a:last-child{border-bottom:0; padding-bottom:0;}
.mini a:hover{color: rgba(16,26,21,.92);}
.mini b{font-size: 13px; line-height:1.35;}
.mini small{display:block; color: rgba(16,26,21,.55); margin-top: 4px;}
.pager{margin-top: 18px;
      display:flex; gap:10px; flex-wrap:wrap;
      padding-top: 18px;
      border-top: 1px solid rgba(16,26,21,.10);}
@media (max-width: 1050px){.side{position:relative; top:0; padding-top:0;}
.post{grid-template-columns: 1fr;}
.thumb{aspect-ratio: 16/9;}}
:root{--bg:#fbfbf8; --ink:#101a15;
      --muted: rgba(16,26,21,.72);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);
      --sage:#90a69b; --sage2:#6f8e81;
      --sh1: 0 30px 90px rgba(16,26,21,.10);
      --sh2: 0 18px 60px rgba(16,26,21,.10);
      --sh3: 0 10px 24px rgba(16,26,21,.08);
      --max:1180px; --rHero:54px; --r:28px;}
*{box-sizing:border-box}
body{margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--ink);
      background:
        radial-gradient(1200px 700px at 15% 0%, rgba(144,166,155,.18), transparent 60%),
        radial-gradient(900px 520px at 90% 10%, rgba(111,142,129,.14), transparent 60%),
        linear-gradient(180deg, #fff, var(--bg));
      overflow-x:hidden;}
a{color:inherit;text-decoration:none}
.serif{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.4px}
.kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(16,26,21,.55);margin:0 0 10px}
.grain{pointer-events:none; position:fixed; inset:0; z-index:0; opacity:.12; mix-blend-mode:multiply;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.10'/%3E%3C/svg%3E");}
.topbar{position:relative; z-index:60; background:rgba(255,255,255,.70); backdrop-filter: blur(14px); border-bottom:1px solid rgba(16,26,21,.08);}
.topbar .row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:12px;color:var(--muted2);flex-wrap:wrap}
.topbar a{text-decoration:underline;text-decoration-color:rgba(16,26,21,.18);text-underline-offset:3px;color:rgba(16,26,21,.76)}
.sep{opacity:.35;padding:0 10px}
header{position:sticky; top:0; z-index:50; background:rgba(251,251,248,.72); backdrop-filter: blur(16px); border-bottom:1px solid rgba(16,26,21,.08);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:14px}
.brand{display:flex;align-items:center;gap:12px}
.mark{width:44px;height:44px;border-radius:16px;position:relative;overflow:hidden;
      background: radial-gradient(14px 14px at 30% 30%, rgba(255,255,255,.80), transparent 60%),
                  linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      box-shadow:0 18px 45px rgba(111,142,129,.20);}
@keyframes spin{to{transform:rotate(360deg)}}
.brand strong{display:block;font-weight:700;font-size:14px;letter-spacing:-.2px;line-height:1.1}
.brand span{display:block;font-size:12px;color:rgba(16,26,21,.62);margin-top:2px}
nav.links{display:flex;align-items:center;gap:10px}
nav.links a{font-size:13px;color:rgba(16,26,21,.70);padding:10px 12px;border-radius:999px;transition:.18s}
nav.links a:hover{background:rgba(144,166,155,.14);color:rgba(16,26,21,.92)}
nav.links a.active{background:rgba(144,166,155,.16);color:rgba(16,26,21,.92)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
      padding:12px 16px;border-radius:999px;border:1px solid rgba(16,26,21,.12);
      background:rgba(255,255,255,.92); color:rgba(16,26,21,.90);
      box-shadow:var(--sh3); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      user-select:none; white-space:nowrap; position:relative; overflow:hidden;}
.btn:hover{transform:translateY(-1px);border-color:rgba(16,26,21,.16);box-shadow:0 18px 44px rgba(16,26,21,.10)}
.btn-primary{background:linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      border-color:rgba(111,142,129,.28);
      color:#07110d; font-weight:800; letter-spacing:.02em;}
.btn-primary>*{position:relative;z-index:1}
.btn-sm{padding:10px 14px;font-size:13px}
.btn-ghost{background:rgba(255,255,255,.08); border-color:rgba(16,26,21,.14); backdrop-filter: blur(10px);}
.icon{width:18px;height:18px;display:inline-block}
.magnetic{will-change:transform}
main{position:relative;z-index:1}
.page{padding:18px 0 10px}
.hero{border-radius:var(--rHero);
      border:1px solid rgba(16,26,21,.08);
      box-shadow:var(--sh1);
      overflow:hidden;
      background:
        radial-gradient(980px 480px at 18% 0%, rgba(144,166,155,.18), transparent 62%),
        radial-gradient(760px 360px at 88% 12%, rgba(111,142,129,.12), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.72));}
.heroInner{padding:26px; display:grid; grid-template-columns: 1fr; gap: 14px;}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:rgba(16,26,21,.58)}
.crumbs a{text-decoration:underline;text-decoration-color:rgba(16,26,21,.18);text-underline-offset:3px}
.title{margin:0;font-size:clamp(30px,3.7vw,50px);line-height:1.05;color:rgba(16,26,21,.94)}
.subtitle{margin:10px 0 0;color:rgba(16,26,21,.72);font-size:15.5px;line-height:1.9;max-width:72ch}
.metaRow{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:rgba(16,26,21,.60);font-size:12.5px}
.chip{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid rgba(16,26,21,.10);background:rgba(255,255,255,.70);color:rgba(16,26,21,.70)}
.heroActions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}
section{padding:34px 0; position:relative; z-index:1}
.layout{display:grid; grid-template-columns: 1fr 320px; gap:34px; align-items:start;}
.article{background:rgba(255,255,255,.62);
      border:1px solid rgba(16,26,21,.10);
      border-radius:44px;
      box-shadow:var(--sh2);
      padding:18px;}
.cover{border-radius:34px; overflow:hidden;
      border:1px solid rgba(16,26,21,.08);
      box-shadow:var(--sh3);
      background:rgba(255,255,255,.92);}
.cover img{width:100%; height:min(46vh, 420px); object-fit:cover; display:block; transform:scale(1.02)}
.shareBar{margin-top: 12px;
      padding: 12px 12px;
      border: 1px solid rgba(16,26,21,.10);
      border-radius: 22px;
      background: rgba(255,255,255,.72);
      display:flex;
      gap: 10px;
      align-items:center;
      justify-content:space-between;
      flex-wrap:wrap;}
.shareLeft{display:flex; gap:10px; align-items:center; flex-wrap:wrap;
      color: rgba(16,26,21,.62);
      font-size: 12.5px;}
.shareLeft b{color: rgba(16,26,21,.86); font-weight: 600;}
.shareBtns{display:flex; gap:8px; align-items:center; flex-wrap:wrap;}
.sbtn{display:inline-flex; align-items:center; justify-content:center;
      width:42px; height:42px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.90);
      box-shadow: var(--sh3);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      cursor:pointer;}
.sbtn:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.16); box-shadow: 0 18px 44px rgba(16,26,21,.10);}
.sbtn svg{width:18px; height:18px; opacity:.82;}
.copyBtn{height:42px; padding:0 14px; border-radius:999px;
      font-size: 13px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.90);
      box-shadow: var(--sh3);
      cursor:pointer;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      display:inline-flex; align-items:center; gap:10px;}
.copyBtn:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.16); box-shadow: 0 18px 44px rgba(16,26,21,.10);}
.prose{padding:16px 10px 6px;color:rgba(16,26,21,.75);font-size:15px;line-height:2.0}
.prose p{margin:0 0 14px}
.prose h3{margin:18px 0 8px;font-size:18px;color:rgba(16,26,21,.92);letter-spacing:-.2px}
.prose blockquote{margin:18px 0; padding:12px 14px 12px 16px;
      border-left:2px solid rgba(111,142,129,.35);
      color:rgba(16,26,21,.72);
      background:rgba(255,255,255,.55);
      border-radius:16px;}
.articleFooter{margin-top: 10px; padding: 14px 10px 0;
      border-top:1px solid rgba(16,26,21,.10);
      display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap;
      color:rgba(16,26,21,.60); font-size:12.5px;}
.underline{text-decoration:underline; text-underline-offset:3px; text-decoration-color: rgba(16,26,21,.18);}
.side{position:sticky; top:96px; display:grid; gap:14px; padding-top:8px;}
.box{border:1px solid rgba(16,26,21,.10); border-radius:28px; background:rgba(255,255,255,.70); box-shadow:var(--sh3); padding:14px;}
.box h4{margin:0 0 10px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(16,26,21,.55)}
.list{display:grid; gap:10px; font-size:13px; color:rgba(16,26,21,.72)}
.list a{display:block;padding:10px 0;border-bottom:1px solid rgba(16,26,21,.10)}
.list a:last-child{border-bottom:0;padding-bottom:0}
.list a:hover{color:rgba(16,26,21,.92)}
.list small{display:block;color:rgba(16,26,21,.55);margin-top:4px;line-height:1.6}
.comments{margin-top:14px;
      background:rgba(255,255,255,.62);
      border:1px solid rgba(16,26,21,.10);
      border-radius:34px;
      box-shadow:var(--sh3);
      padding:16px;}
.comments h3{margin:0 0 10px;
      font-size:16px;
      letter-spacing:.14em;
      text-transform:uppercase;
      color:rgba(16,26,21,.55);}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{display:flex;flex-direction:column;gap:8px}
.field label{font-size:12px;color:rgba(16,26,21,.60)}
.input,.textarea{width:100%;
      border-radius:18px;
      border:1px solid rgba(16,26,21,.10);
      background:rgba(255,255,255,.86);
      box-shadow:var(--sh3);
      padding:12px;
      font-family:inherit;
      color:rgba(16,26,21,.86);
      outline:2px solid transparent;
      transition:border-color .18s ease, transform .18s ease;}
.input:focus,.textarea:focus{border-color:rgba(111,142,129,.28);transform:translateY(-1px)}
.textarea{min-height:140px;resize:vertical}
.commentActions{margin-top:12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:rgba(16,26,21,.58);font-size:12px}
footer{margin-top:18px;
      border-top:1px solid rgba(16,26,21,.10);
      padding:28px 0 44px;
      color:rgba(16,26,21,.70);
      font-size:12px;
      background:rgba(255,255,255,.55);
      position:relative; z-index:1;}
.foot{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:16px;align-items:start}
.foot h5{margin:0 0 10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(16,26,21,.62)}
.foot small{display:block;color:rgba(16,26,21,.62);line-height:1.7}
.foot a{text-decoration:underline;text-decoration-color:rgba(16,26,21,.18);text-underline-offset:3px}
.newsletter{border-radius:999px;border:1px solid rgba(16,26,21,.10);
      background:rgba(255,255,255,.88);box-shadow:var(--sh3);
      padding:12px;display:flex;gap:10px;align-items:center;}
.nInput{flex:1;height:40px;border-radius:999px;border:0;background:transparent;padding:0 10px;outline:2px solid transparent;font-family:inherit;color:rgba(16,26,21,.86)}
.bottomline{margin-top:16px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
      color:rgba(16,26,21,.58);border-top:1px solid rgba(16,26,21,.08);padding-top:14px;}
@media (max-width:1050px){.layout{grid-template-columns:1fr}
.side{position:relative;top:0;padding-top:0}
.grid{grid-template-columns:1fr}
.cover img{height:38vh}}
@media (max-width:980px){nav.links{display:none}
.foot{grid-template-columns:1fr}}
:root{--bg:#fbfbf8;
      --paper:#ffffff;
      --ink:#101a15;

      --muted: rgba(16,26,21,.70);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;
      --fog:#f2f4f1;

      --radius:18px;
      --radius2:26px;
      --radius3:36px;

      --shadow: 0 30px 90px rgba(16,26,21,.10);
      --shadow2: 0 18px 60px rgba(16,26,21,.10);
      --shadow3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;}
.chip{display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow3);}
.sub{margin-top: 8px;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.85;
      max-width: 92ch;}
.fold{padding: 18px 0 10px;}
.foldCard{border-radius: 44px;
      border: 1px solid rgba(16,26,21,.08);
      background:
        radial-gradient(900px 440px at 20% 0%, rgba(144,166,155,.24), transparent 62%),
        radial-gradient(700px 360px at 92% 10%, rgba(111,142,129,.16), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.74));
      box-shadow: var(--shadow);
      overflow:hidden;
      position:relative;}
.foldInner{padding: 22px;
      display:grid;
      grid-template-columns: 1.12fr .88fr;
      gap: 18px;
      align-items:stretch;}
.foldLeft{padding: 6px 6px 6px 6px;
      display:flex;
      flex-direction:column;
      gap: 12px;}
.title{margin:0;
      font-size: clamp(36px, 4.2vw, 56px);
      line-height: 1.04;
      color: rgba(16,26,21,.94);}
.lead{margin: 2px 0 0;
      color: rgba(16,26,21,.72);
      font-size: 15.5px;
      line-height: 1.85;
      max-width: 64ch;}
.actionDock{margin-top: 6px;
      display:flex;
      gap: 10px;
      flex-wrap:wrap;
      align-items:center;}
.microRow{display:flex;
      gap: 10px;
      flex-wrap:wrap;
      align-items:center;
      margin-top: 2px;
      color: rgba(16,26,21,.62);
      font-size: 12px;}
.microPill{display:inline-flex; gap:8px; align-items:center;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.88);
      box-shadow: var(--shadow3);}
.microPill a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
.wizard{border-radius: 34px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow2);
      padding: 14px;
      display:grid;
      align-content:start;
      gap: 10px;
      position:relative;
      overflow:hidden;}
.wizard:before{content:"";
      position:absolute;
      inset:auto -90px -90px auto;
      width:320px; height:320px;
      background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.22), transparent 60%);
      opacity:.9;
      transform: rotate(12deg);
      pointer-events:none;}
.wizard *{position:relative; z-index:1;}
.wHead{display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      flex-wrap:wrap;}
.wHead h3{margin:0;
      font-size: 13px;
      letter-spacing:.16em;
      text-transform: uppercase;
      color: rgba(16,26,21,.62);}
.wSteps{display:flex; align-items:center; gap:8px;
      font-size: 12px; color: rgba(16,26,21,.56);}
.dot{width: 8px; height: 8px; border-radius: 99px;
      border: 1px solid rgba(16,26,21,.18);
      background: rgba(255,255,255,.9);}
.dot.on{background: rgba(111,142,129,.9);
      border-color: rgba(111,142,129,.9);
      box-shadow: 0 0 0 6px rgba(144,166,155,.18);}
.wBlock{border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(242,244,241,.58);
      padding: 12px;
      display:grid;
      gap: 10px;}
.choiceGrid{display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;}
.choice{border-radius: 22px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow3);
      padding: 12px;
      cursor:pointer;
      transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
      user-select:none;
      min-height: 82px;}
.choice:hover{transform: translateY(-2px);
      border-color: rgba(16,26,21,.14);
      box-shadow: 0 22px 60px rgba(16,26,21,.10);}
.choice.active{border-color: rgba(111,142,129,.45);
      background: rgba(144,166,155,.20);}
.choice b{display:block; color: rgba(16,26,21,.92); font-size: 13.5px;}
.choice span{display:block; margin-top:4px; color: rgba(16,26,21,.64); font-size: 12px; line-height:1.55;}
.wField{display:flex;
      flex-direction:column;
      gap: 7px;}
.wField label{font-size: 12px;
      color: rgba(16,26,21,.68);}
.wInput{height: 44px;
      border-radius: 16px;
      border: 1px solid rgba(16,26,21,.12);
      background: rgba(255,255,255,.98);
      padding: 0 12px;
      outline:2px solid transparent;
      font-family: inherit;
      color: rgba(16,26,21,.86);
      transition: box-shadow .18s ease, border-color .18s ease;}
.wInput:focus{border-color: rgba(111,142,129,.40);
      box-shadow: 0 0 0 6px rgba(144,166,155,.18);}
.ctaStack{display:grid;
      gap: 10px;
      margin-top: 2px;}
.miniCtas{display:flex; gap:10px; flex-wrap:wrap; align-items:center;
      color: rgba(16,26,21,.60);
      font-size: 12px;}
.miniCtas a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
.sectionHead{display:flex; align-items:flex-end; justify-content:space-between;
      gap: 16px; margin-bottom: 16px;}
.cardsRow{display:grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 14px;
      align-items:stretch;}
.card{border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow3);
      padding: 16px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      position:relative; overflow:hidden;}
.card:hover{transform: translateY(-2px);
      border-color: rgba(16,26,21,.12);
      box-shadow: 0 24px 70px rgba(16,26,21,.10);}
.card *{position:relative; z-index:1;}
.card h4{margin:0 0 8px; font-size: 14px; letter-spacing:-.2px;}
.card p{margin:0; font-size: 13px; color: var(--muted); line-height:1.75;}
.card a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
.mapSection{padding: 10px 0 34px;}
.mapBand{border-radius: var(--radius3);
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.90);
      box-shadow: var(--shadow);
      overflow:hidden;}
.mapBandTop{padding: 18px 18px 10px;
      display:flex;
      gap: 14px;
      align-items:flex-end;
      justify-content:space-between;
      flex-wrap:wrap;}
.mapBandTop h2{margin:0; font-size: 24px;}
.mapBandBody{padding: 14px 18px 18px;}
.mapsGrid{display:grid;
      grid-template-columns: .95fr 1.05fr;
      gap: 14px;
      align-items:stretch;}
.mapsInfo{border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background:
        radial-gradient(700px 320px at 20% 0%, rgba(144,166,155,.16), transparent 55%),
        rgba(242,244,241,.60);
      box-shadow: var(--shadow3);
      padding: 16px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      gap: 12px;}
.infoList{display:grid; gap: 10px;}
.infoItem{border-radius: 18px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.88);
      box-shadow: var(--shadow3);
      padding: 12px;
      color: rgba(16,26,21,.76);
      font-size: 13px;
      line-height:1.65;}
.infoItem b{color: rgba(16,26,21,.90);}
.mapsCards{display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      align-items:stretch;}
.mapCard{border-radius: 26px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.96);
      box-shadow: var(--shadow3);
      position:relative;
      min-height: 240px;}
.mapCard iframe{width:100%; height: 240px; border:0;}
.mapMeta{position:absolute; left:10px; right:10px; bottom:10px;
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(16,26,21,.08);
      backdrop-filter: blur(12px);
      border-radius: 18px;
      padding: 10px 10px;
      display:flex; justify-content:space-between; gap:10px; align-items:center;
      color: rgba(16,26,21,.82);
      font-size: 12px;
      box-shadow: var(--shadow3);}
@media (max-width: 980px){.foldInner{grid-template-columns: 1fr;}
.choiceGrid{grid-template-columns: 1fr;}
.cardsRow{grid-template-columns: 1fr;}
.mapsGrid{grid-template-columns: 1fr;}
.mapsCards{grid-template-columns: 1fr;}}
@media (prefers-reduced-motion: reduce){.btn{transition:none;}}
.sep{opacity:.35; padding:0 10px;}
.page{padding: 18px 0 8px;}
.heroInner{padding: 26px;
      display:grid;
      grid-template-columns: .95fr 1.05fr;
      gap: 22px;
      align-items:stretch;}
.portrait{border-radius: 44px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.10);
      box-shadow: var(--sh2);
      background: rgba(255,255,255,.86);
      position:relative;
      min-height: 440px;}
.portrait img{width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      transform: scale(1.02);
      filter: saturate(1.02) contrast(1.02);}
.portrait:after{content:"";
      position:absolute; inset:0;
      background:
        radial-gradient(500px 320px at 40% 10%, rgba(255,255,255,.35), transparent 60%),
        linear-gradient(180deg, rgba(16,26,21,.08), transparent 35%, rgba(16,26,21,.10));
      pointer-events:none;
      opacity:.65;}
.badge{position:absolute;
      left: 14px; bottom: 14px;
      padding: 10px 12px;
      border-radius: 20px;
      border: 1px solid rgba(255,255,255,.22);
      background: rgba(255,255,255,.14);
      color: rgba(255,255,255,.95);
      backdrop-filter: blur(12px);
      box-shadow: 0 18px 44px rgba(16,26,21,.18);
      max-width: 80%;}
.badge b{display:block; font-size: 14px;}
.badge small{display:block; opacity:.85; line-height:1.6; margin-top:2px;}
.crumbs{display:flex; gap:8px; flex-wrap:wrap;
      font-size: 12px;
      color: rgba(16,26,21,.58);
      margin-bottom: 10px;}
.crumbs a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
.title{margin:0;
      font-size: clamp(30px, 3.2vw, 46px);
      line-height: 1.05;
      color: rgba(16,26,21,.94);}
.subtitle{margin: 10px 0 0;
      color: rgba(16,26,21,.72);
      font-size: 15.5px;
      line-height: 1.9;
      max-width: 70ch;}
.metaRow{margin-top: 14px;
      display:flex; gap: 10px; flex-wrap:wrap; align-items:center;
      color: rgba(16,26,21,.60);
      font-size: 12.5px;}
.heroActions{margin-top: 16px;
      display:flex; gap: 10px; flex-wrap:wrap;
      align-items:center;}
.facts{margin-top: 14px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;}
.fact{border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.74);
      box-shadow: var(--sh3);
      border-radius: 22px;
      padding: 12px;
      color: rgba(16,26,21,.72);
      font-size: 13px;
      line-height: 1.7;}
.fact b{color: rgba(16,26,21,.92);}
.fact a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
section{padding: 28px 0; position:relative; z-index:1;}
.layout{display:grid;
      grid-template-columns: 1fr 330px;
      gap: 28px;
      align-items:start;}
.card{background: rgba(255,255,255,.62);
      border: 1px solid rgba(16,26,21,.10);
      border-radius: 44px;
      box-shadow: var(--sh2);
      padding: 18px;}
.cardHead{padding: 10px 10px 0;
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap: 12px;
      flex-wrap:wrap;}
.h2{margin:0;
      font-size: 18px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);}
.hint{color: rgba(16,26,21,.55);
      font-size: 12px;}
.timeline{margin-top: 12px;
      padding: 6px 10px 12px;
      display:grid;
      gap: 10px;}
.timeline .item{display:grid;
      grid-template-columns: 12px 1fr;
      gap: 12px;
      padding: 12px 12px;
      border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);}
.dot{width:12px; height:12px;
      border-radius: 999px;
      background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
      box-shadow: 0 18px 45px rgba(111,142,129,.22);
      margin-top: 4px;}
.item b{display:block;
      color: rgba(16,26,21,.92);
      font-size: 14px;
      line-height: 1.55;
      margin-bottom: 2px;}
.item small{display:block;
      color: rgba(16,26,21,.65);
      font-size: 13px;
      line-height: 1.75;}
.list{margin: 12px 10px 12px;
      padding: 0;
      list-style:none;
      display:grid;
      gap: 10px;}
.li{padding: 12px 12px;
      border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);
      color: rgba(16,26,21,.74);
      font-size: 13px;
      line-height: 1.85;
      position:relative;}
.li:before{content:"";
      position:absolute;
      left: 14px; top: 18px;
      width: 7px; height: 7px;
      border-radius: 999px;
      background: rgba(111,142,129,.85);
      box-shadow: 0 14px 32px rgba(111,142,129,.22);}
.li .content{padding-left: 18px;}
.li b{color: rgba(16,26,21,.92); font-weight:600;}
.media{margin: 12px 10px 14px;
      border-radius: 34px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.78);
      box-shadow: var(--sh3);}
.media img{width:100%; height:auto; display:block;}
.toc{display:grid;
      gap: 10px;
      font-size: 13px;
      color: rgba(16,26,21,.72);}
.toc a{display:flex;
      justify-content:space-between;
      align-items:center;
      padding: 10px 12px;
      border-radius: 18px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.78);
      box-shadow: var(--sh3);
      transition: transform .18s ease, border-color .18s ease;}
.toc a:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.14); color: rgba(16,26,21,.92);}
.toc span{opacity:.7;}
.miniNote{color: rgba(16,26,21,.58);
      font-size: 12px;
      line-height: 1.7;
      margin-top: 8px;}
@media (max-width: 1050px){.heroInner{grid-template-columns: 1fr;}
.portrait{min-height: 360px;}
.facts{grid-template-columns: 1fr;}}
@media print{header,.topbar,.grain,.side,.heroActions,.newsletter{display:none ;}
body{background:#fff;}
.card,.hero{box-shadow:none;}}
:root{--bg:#fbfbf8;
      --ink:#101a15;
      --muted: rgba(16,26,21,.72);
      --muted2: rgba(16,26,21,.58);
      --line: rgba(16,26,21,.10);

      --sage:#90a69b;
      --sage2:#6f8e81;

      --sh1: 0 30px 90px rgba(16,26,21,.10);
      --sh2: 0 18px 60px rgba(16,26,21,.10);
      --sh3: 0 10px 24px rgba(16,26,21,.08);

      --max:1180px;
      --rHero:54px;
      --r:28px;

      --gap: 14px;}
nav.links a.active{background: rgba(144,166,155,.18);
      color: rgba(16,26,21,.92);
      border: 1px solid rgba(16,26,21,.08);}
.heroInner{padding: 26px;
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 18px;
      align-items:center;}
.subtitle{margin: 10px 0 0;
      color: rgba(16,26,21,.72);
      font-size: 15.5px;
      line-height: 1.9;
      max-width: 72ch;}
.heroPanel{border-radius: 44px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh2);
      padding: 16px;}
.heroPanel .row{display:flex;
      gap: 10px;
      flex-wrap:wrap;
      align-items:center;
      justify-content:space-between;}
.search{flex: 1 1 220px;
      display:flex; align-items:center; gap:10px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.86);
      border-radius: 999px;
      padding: 10px 12px;
      box-shadow: var(--sh3);
      min-width: 220px;}
.search input{border:0; outline:2px solid transparent; width:100%;
      font: inherit;
      color: rgba(16,26,21,.86);
      background: transparent;}
.chips{margin-top: 12px;
      display:flex;
      gap: 8px;
      flex-wrap:wrap;}
.chip{cursor:pointer;
      user-select:none;
      font-size: 12px;
      padding: 9px 12px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.80);
      box-shadow: var(--sh3);
      color: rgba(16,26,21,.74);
      transition: transform .18s ease, border-color .18s ease, background .18s ease;}
.chip:hover{transform: translateY(-1px); border-color: rgba(16,26,21,.14);}
.chip.active{background: rgba(144,166,155,.20);
      border-color: rgba(111,142,129,.26);
      color: rgba(16,26,21,.90);}
section.galleryWrap{padding: 14px 0 30px;
      position:relative; z-index:1;}
.metaBar{margin-top: 12px;
      display:flex;
      justify-content:space-between;
      align-items:flex-end;
      gap: 12px;
      flex-wrap:wrap;
      color: rgba(16,26,21,.62);
      font-size: 12px;}
.count{display:flex; gap:8px; align-items:center;
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);}
body[class*="template-galleria"] .grid{margin-top: 14px;
      columns: 4 240px;
      column-gap: var(--gap);}
body[class*="template-galleria"] .grid .item{break-inside: avoid;
      margin: 0 0 var(--gap);
      border-radius: 26px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.62);
      box-shadow: var(--sh2);
      transform: translateZ(0);}
body[class*="template-galleria"] .grid .thumb{position:relative;
      overflow:hidden;
      border-bottom: 1px solid rgba(16,26,21,.08);
      background:
        radial-gradient(600px 240px at 20% 0%, rgba(144,166,155,.22), transparent 60%),
        radial-gradient(520px 260px at 90% 10%, rgba(111,142,129,.14), transparent 60%),
        rgba(255,255,255,.72);}
body[class*="template-galleria"] .grid .thumb img{display:block;
      width:100%;
      height:auto;
      transform: scale(1.02);
      transition: transform .55s ease;
      will-change: transform;}
.item:hover .thumb img{transform: scale(1.06);}
body[class*="template-galleria"] .grid .overlay{position:absolute; inset:0;
      background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.42));
      opacity:0;
      transition: opacity .35s ease;
      display:flex;
      align-items:flex-end;
      padding: 12px;
      gap: 10px;}
.item:hover .overlay{opacity:1;}
body[class*="template-galleria"] .grid .tag{font-size: 11px;
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.86);
      border: 1px solid rgba(255,255,255,.40);
      color: rgba(16,26,21,.86);
      box-shadow: 0 10px 24px rgba(0,0,0,.12);}
body[class*="template-galleria"] .grid .cap{padding: 12px 12px 13px;
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap: 10px;}
body[class*="template-galleria"] .grid .cap strong{display:block;
      font-size: 13px;
      color: rgba(16,26,21,.92);
      line-height: 1.25;
      letter-spacing: -.1px;}
body[class*="template-galleria"] .grid .cap small{display:block;
      margin-top: 4px;
      font-size: 12px;
      color: rgba(16,26,21,.58);
      line-height: 1.5;}
body[class*="template-galleria"] .grid .openBtn{flex: 0 0 auto;
      width: 38px; height: 38px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.90);
      box-shadow: var(--sh3);
      display:inline-flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      transition: transform .18s ease, box-shadow .18s ease;}
.openBtn:hover{transform: translateY(-1px); box-shadow: 0 18px 44px rgba(16,26,21,.10);}
.openBtn svg{width: 18px; height: 18px; opacity:.8;}
.lb{position:fixed; inset:0;
      background: rgba(10,14,12,.62);
      backdrop-filter: blur(10px);
      display:none;
      z-index: 100;
      padding: 18px;}
.lb.open{display:grid; place-items:center;}
.lbCard{width:min(1100px, 100%);
      border-radius: 34px;
      overflow:hidden;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.90);
      box-shadow: 0 40px 120px rgba(0,0,0,.35);}
.lbHead{display:flex; justify-content:space-between; align-items:center; gap: 12px;
      padding: 12px 14px;
      border-bottom: 1px solid rgba(16,26,21,.08);
      background:
        radial-gradient(520px 220px at 20% 0%, rgba(144,166,155,.20), transparent 55%),
        rgba(255,255,255,.78);}
.lbHead .t{min-width: 0;}
.lbHead strong{display:block;
      font-size: 13px;
      color: rgba(16,26,21,.92);
      white-space: nowrap;
      overflow:hidden;
      text-overflow: ellipsis;}
.lbHead small{display:block;
      font-size: 12px;
      color: rgba(16,26,21,.58);
      margin-top: 2px;
      white-space: nowrap;
      overflow:hidden;
      text-overflow: ellipsis;}
.lbActions{display:flex; gap: 8px; align-items:center;
      flex: 0 0 auto;}
.lbIcon{width: 38px; height: 38px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.88);
      box-shadow: var(--sh3);
      display:inline-flex; align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .18s ease;}
.lbIcon:hover{transform: translateY(-1px);}
.lbIcon svg{width: 18px; height: 18px; opacity:.8;}
.lbMedia{display:grid;
      grid-template-columns: 1fr 340px;
      gap: 0;
      background: rgba(255,255,255,.88);}
.lbMedia img{width:100%; height: 100%;
      max-height: 72vh;
      object-fit: cover;
      display:block;}
.lbSide{padding: 14px;
      border-left: 1px solid rgba(16,26,21,.08);}
.lbSide h4{margin:0 0 10px;
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);}
.lbSide p{margin: 0;
      font-size: 13.5px;
      line-height: 1.85;
      color: rgba(16,26,21,.72);}
.lbSide .pills{margin-top: 12px;
      display:flex; gap: 8px; flex-wrap:wrap;}
footer{margin-top: 12px;
      border-top: 1px solid rgba(16,26,21,.10);
      padding: 28px 0 44px;
      color: rgba(16,26,21,.70);
      font-size: 12px;
      background: rgba(255,255,255,.55);
      position:relative;
      z-index:1;}
@media (max-width: 980px){.lbMedia{grid-template-columns: 1fr;}
.lbSide{border-left:0; border-top: 1px solid rgba(16,26,21,.08);}}
@media (max-width: 560px){.container{width: min(var(--max), calc(100% - 28px));}
.grid{columns: 2 160px;}}
@media print{header,.topbar,.grain,.heroPanel,.newsletter{display:none ;}
.hero{box-shadow:none;}}
.page{padding: 18px 0 14px;}
.heroInner{padding: 26px;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap: 18px;
      align-items:center;}
.heroCard{border-radius: 44px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh2);
      padding: 16px;}
.heroCard h3{margin:0 0 10px;
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(16,26,21,.55);}
.heroCard p{margin:0;
      font-size: 13px;
      line-height: 1.8;
      color: rgba(16,26,21,.70);}
.heroCard .mini{margin-top: 10px;
      display:grid;
      gap: 8px;
      font-size: 12.5px;
      color: rgba(16,26,21,.70);}
.heroCard a{text-decoration: underline;
      text-decoration-color: rgba(16,26,21,.18);
      text-underline-offset: 3px;}
section{padding: 14px 0 26px; position:relative; z-index:1;}
.layout{display:grid;
      grid-template-columns: 1fr 330px;
      gap: 22px;
      align-items:start;}
.tableWrap{margin: 12px 10px 10px;
      border-radius: 26px;
      overflow:hidden;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.74);
      box-shadow: var(--sh3);}
table{width:100%;
      border-collapse: collapse;
      font-size: 13.5px;
      line-height: 1.8;
      color: rgba(16,26,21,.74);}
thead th{text-align:left;
      padding: 12px 14px;
      font-size: 12px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(16,26,21,.58);
      background: rgba(144,166,155,.12);
      border-bottom: 1px solid rgba(16,26,21,.08);
      white-space: nowrap;}
tbody td{padding: 12px 14px;
      border-bottom: 1px solid rgba(16,26,21,.06);
      vertical-align: top;}
tbody tr:last-child td{border-bottom: 0;}
.pill{display:inline-flex;
      padding: 6px 10px;
      border-radius: 999px;
      border: 1px solid rgba(16,26,21,.10);
      background: rgba(255,255,255,.78);
      font-size: 12px;
      color: rgba(16,26,21,.72);
      white-space: nowrap;}
.content{padding: 10px 10px 6px;
      color: rgba(16,26,21,.76);
      line-height: 1.95;
      font-size: 14px;}
.content h3{margin: 18px 0 6px;
      font-size: 14px;
      color: rgba(16,26,21,.92);
      letter-spacing: .06em;
      text-transform: uppercase;}
.content p{margin: 8px 0;}
.content ul{margin: 8px 0 0; padding-left: 18px;}
.content li{margin: 6px 0;}
.faq{padding: 6px 10px 12px;
      display:grid;
      gap: 10px;}
details{border-radius: 26px;
      border: 1px solid rgba(16,26,21,.08);
      background: rgba(255,255,255,.70);
      box-shadow: var(--sh3);
      overflow:hidden;}
summary{list-style:none;
      cursor:pointer;
      padding: 14px 14px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 12px;
      color: rgba(16,26,21,.86);
      font-weight: 600;
      font-size: 13.5px;}
.chev{width: 10px; height: 10px;
      border-right: 2px solid rgba(16,26,21,.55);
      border-bottom: 2px solid rgba(16,26,21,.55);
      transform: rotate(45deg);
      transition: transform .2s ease;
      margin-right: 4px;
      flex: 0 0 auto;}
details[open] .chev{transform: rotate(-135deg);}
.dBody{padding: 0 14px 14px;
      color: rgba(16,26,21,.74);
      font-size: 13.5px;
      line-height: 1.9;}
.toc{display:flex;
      gap: 10px;
      font-size: 13px;
      color: rgba(16,26,21,.72);}
.olLb{position: fixed;
  inset: 0;
  z-index: 9999;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(16,26,21,.62);
  backdrop-filter: blur(10px);}
.olLbBackdrop{position:absolute;
  inset:0;
  z-index: 0;}
.olLbDialog{position: relative;
  z-index: 1;
  width: min(1080px, 96vw);
  max-height: 88vh;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.16);
  overflow: hidden;
  box-shadow: var(--shadow2);
  background: rgba(251,251,248,.98);}
.olLbStage{position: relative;
  padding: 14px;
  background: rgba(16,26,21,.92);
  display:flex;
  align-items:center;
  justify-content:center;}
.olLbImg{max-width: 100%;
  max-height: 72vh;
  border-radius: 18px;
  display:block;
  background: rgba(0,0,0,.25);}
.olLbCaption{display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-top: 1px solid rgba(16,26,21,.10);}
.olLbTitle{color: rgba(16,26,21,.78);
  font-size: 13px;
  line-height: 1.25;}
.olLbOpen{color: rgba(16,26,21,.70);
  font-size: 13px;
  text-decoration: none;
  border-bottom: 1px solid rgba(16,26,21,.22);}
.olLbOpen:hover{color: rgba(16,26,21,.92); border-bottom-color: rgba(16,26,21,.42);}
.olLbClose{position:absolute;
  top: 12px;
  right: 12px;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(16,26,21,.55);
  color: #fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;}
.olLbNav{position:absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 64px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(16,26,21,.50);
  color: #fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size: 34px;
  line-height: 1;
  cursor: pointer;}
.olLbNav.prev{left: 12px;}
.olLbNav.next{right: 12px;}
.olLbNav:disabled{opacity: .35; cursor: default;}
.olLbLink{display:block;
  position:relative;}
.olLbLink img{transition: transform .35s ease;}
.olLbLink:hover img{transform: scale(1.02);}
@media (max-width: 980px){.olLbDialog{width: 96vw; max-height: 90vh; border-radius: 22px;}
.olLbNav{width: 42px; height: 58px; border-radius: 16px;}
.olLbClose{width: 40px; height: 40px;}
.olLbImg{max-height: 66vh;}}
.page{padding: 18px 0 30px;}
.hero{margin-top: 18px;
  border-radius: var(--radius3);
  border: 1px solid rgba(16,26,21,.08);
  overflow:hidden;
  box-shadow: var(--shadow);
  
  position:relative;}
.hero:before{content:"";
  position:absolute; inset:-40% -30% auto auto;
  width:520px; height:520px;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.34), transparent 60%);
  opacity:.9;
  transform: rotate(10deg);
  pointer-events:none;}
.heroInner{position:relative; z-index:1;
  padding: 22px;
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 16px;
  align-items: end;}
.title{margin:0; font-size: clamp(32px, 3.6vw, 46px); line-height:1.06; color: rgba(16,26,21,.94);}
.subtitle, .lead{margin-top: 12px;
  color: rgba(16,26,21,.70);
  font-size: 15px;
  line-height: 1.85;
  max-width: 70ch;}
.heroActions{margin-top: 14px; display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.heroCard{border-radius: 26px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(14px);
  box-shadow: var(--shadow2);
  padding: 14px;}
.heroCardTitle{font-weight:800; letter-spacing:-.2px; color: rgba(16,26,21,.88);}
.heroCardList{margin-top: 10px; display:grid; gap: 8px;}
.heroCardList a{display:block;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.88);
  box-shadow: var(--shadow3);
  color: rgba(16,26,21,.86);}
.heroCardList a:hover{background: rgba(144,166,155,.14);}
.paper{border-radius: var(--radius3);
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow);
  padding: 18px;
  overflow:hidden;
  position:relative;}
.paper:before{content:"";
  position:absolute;
  inset:auto -90px -90px auto;
  width:320px; height:320px;
  background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.16), transparent 60%);
  opacity:.9;
  transform: rotate(12deg);
  pointer-events:none;}
.paper > *{position:relative; z-index:1;}
.h2{margin: 0; font-size: 26px; line-height: 1.2; letter-spacing: -.3px;}
.content{color: rgba(16,26,21,.72); line-height: 1.95; font-size: 15px;}
.content p{margin: 0 0 12px;}
.content p:last-child{margin-bottom: 0;}
.content a{text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(16,26,21,.18);}
.content ul, .content ol{margin: 0 0 12px 18px; padding: 0;}
.content h2, .content h3, .content h4{color: rgba(16,26,21,.92); line-height: 1.2;}
.content h2{font-size: 22px; margin: 18px 0 10px;}
.content h3{font-size: 18px; margin: 16px 0 8px;}
.content h4{font-size: 15px; margin: 14px 0 8px;}
.content blockquote{margin: 14px 0;
  padding: 12px 14px;
  border-left: 3px solid rgba(111,142,129,.60);
  background: rgba(144,166,155,.10);
  border-radius: 16px;}
.olEditor .wp-block{margin-bottom: 14px;}
.olLegal{overflow-wrap:anywhere;}
.olLegal #cmplz-document{max-width: 100%;}
.olLegal #cmplz-document a{text-decoration: underline; text-underline-offset: 3px;}
.olLegal #cmplz-document h2,
.olLegal #cmplz-document h3,
.olLegal #cmplz-document h4{color: var(--ink); margin: 18px 0 10px; line-height:1.2;}
.olLegal #cmplz-document table{width:100%;
  border-collapse: collapse;
  border: 1px solid rgba(16,26,21,.10);
  border-radius: 14px;
  overflow:hidden;}
.olLegal #cmplz-document th,
.olLegal #cmplz-document td{padding: 10px 12px; border-bottom: 1px solid rgba(16,26,21,.08); vertical-align: top;}
.olLegal #cmplz-document th{background: rgba(144,166,155,.14); color: rgba(16,26,21,.82); text-align:left;}
.olSplit{display:grid; grid-template-columns: 1.2fr .8fr; gap: 16px; align-items:start;}
.olMeta{margin: 10px 0 0; font-size: 13px; color: rgba(16,26,21,.68);}
.olCta{display:flex; justify-content:space-between; gap: 16px; align-items:center; flex-wrap:wrap;}
.olVideos{display:grid; grid-template-columns: repeat(2, 1fr); gap: 14px;}
.olVideoCard{border-radius: 26px;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  padding: 14px;}
.olVideoEmbed iframe{width:100%; aspect-ratio: 16/9; height:auto; border:0; border-radius: 18px;}
.olSearch{display:flex; gap: 10px; flex-wrap:wrap; align-items:center;}
.olSearchInput{flex: 1 1 260px;
  min-width: 220px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(16,26,21,.12);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);}
.olSearchBtn{padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(16,26,21,.12);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);
  cursor:pointer;
  font-weight: 800;}
.olSearchBtn:hover{transform: translateY(-1px);}
@media (max-width: 980px){.olSplit{grid-template-columns: 1fr;}
.olVideos{grid-template-columns: 1fr;}}
.olBottomBar{position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 999;
  display:none;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
  background: rgba(251,251,248,.88);
  backdrop-filter: blur(14px);
  border-top: 1px solid rgba(16,26,21,.10);}
.olBottomBar .inner{max-width: 1100px;
  margin: 0 auto;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;}
.olBottomBar a{display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 12px 10px;
  border-radius: 18px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow3);
  text-decoration:none;
  color: rgba(16,26,21,.92);
  font-weight: 800;
  letter-spacing: -.2px;
  font-size: 13.5px;}
.olBottomBar a.primary{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));
  color: #07110d;
  border-color: rgba(16,26,21,.08);}
.olBottomBar svg{width: 18px; height: 18px;}
@media (max-width: 980px){.olCards{grid-template-columns: 1fr;}
.olGallery{grid-template-columns: 1fr;}
.olBottomBar{display:block;}
body{padding-bottom: 84px;}}
.footVat{margin-top:6px; font-size:12px; color: rgba(16,26,21,.70);}
@media (max-width: 980px){header .nav > a.btn.btn-primary{display:none ;}
header .nav{gap:10px;}
header .brand > span > span{display:none;}}
@media (max-width: 420px){header .brand strong{font-size:13px;}}
nav.links a{border-radius: 12px;}
html.olMenuOpen{overflow:hidden;}
.heroInner.oneCol{grid-template-columns: 1fr ;}
.contentGrid.oneCol{grid-template-columns: 1fr ;}
.tecnicheHero .heroInner{padding: 26px;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 22px;
  align-items: center;}
.tecnicheHero .title{margin:0;
  font-size: clamp(34px, 4.1vw, 56px);
  line-height: 1.03;
  color: rgba(16,26,21,.94);}
.tecnicheHero .lead{margin: 12px 0 0;
  color: rgba(16,26,21,.72);
  font-size: 15.5px;
  line-height: 1.9;
  max-width: 70ch;}
.tecnicheHero .actionRow{margin-top: 18px;
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  align-items:center;}
.tecnicheHero .heroMeta{margin-top: 16px;
  display:flow-root;
  gap: 10px;
  padding-left: 14px;
  border-left: 1px solid rgba(16,26,21,.10);}
.tecnichePage .layout{display:grid;
  grid-template-columns: 300px 1fr;
  gap: 34px;
  align-items:start;}
.tecnichePage .index{position: sticky;
  top: 96px;
  padding: 16px 0;}
@media (max-width: 980px){.tecnicheHero .heroInner{grid-template-columns: 1fr; gap: 14px;}
.tecnichePage .layout{grid-template-columns: 1fr;}
.tecnichePage .index{position: relative; top: auto; padding: 0;}}
.mediaRow.oneCol{grid-template-columns: 1fr;}
.page-template-template-consigli .layout{display:flex ;
  gap:34px ;
  align-items:flex-start ;}
.page-template-template-consigli .layout > aside.side{flex:0 0 300px;
  position:sticky;
  top:92px;}
.page-template-template-consigli .layout > div{flex:1 1 auto;
  min-width:0; /* importantissimo per evitare “schiacciamenti” */}
@media (max-width: 980px){.page-template-template-consigli .layout{flex-direction:column ;}
.page-template-template-consigli .layout > aside.side{position:static;
    flex:1 1 auto;}}
@media (max-width: 740px){body.home .sectionHead,
  body.front-page .sectionHead,
  body.page-template-template-home .sectionHead,
  body.page-template-template-home-php .sectionHead{flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;}
body.home .sectionHead > a.btn,
  body.home .sectionHead > button.btn,
  body.front-page .sectionHead > a.btn,
  body.front-page .sectionHead > button.btn,
  body.page-template-template-home .sectionHead > a.btn,
  body.page-template-template-home .sectionHead > button.btn,
  body.page-template-template-home-php .sectionHead > a.btn,
  body.page-template-template-home-php .sectionHead > button.btn{width: 100%;
    justify-content: center;
    text-align: center;
    white-space: normal;
    line-height: 1.2;}}
@media (max-width: 420px){body.home .sectionHead > a.btn,
  body.front-page .sectionHead > a.btn,
  body.page-template-template-home .sectionHead > a.btn,
  body.page-template-template-home-php .sectionHead > a.btn{font-size: 13px;
    padding: 10px 12px;}}
@media (max-width: 740px){.toc .pill{text-decoration: none ;
    display: inline-flex ;
    align-items: center ;
    justify-content: center ;
    line-height: 1 ;
    min-height: 34px;
    padding: 9px 12px;
    white-space: nowrap;}
a.pill{text-decoration: none ;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;}
.toc{align-items: center;}}
@media (max-width: 420px){.toc .pill{font-size: 12px;
    padding: 8px 11px;
    min-height: 32px;}}
body.page-template-template-consigli .layout,
body.page-template-template-consigli-php .layout{display: grid;
  grid-template-columns: 300px 1fr;
  gap: 34px;
  align-items: start;}
body.page-template-template-consigli .side,
body.page-template-template-consigli-php .side{position: sticky;
  top: 96px;
  padding: 16px 0;}
body.page-template-template-consigli .chips,
body.page-template-template-consigli-php .chips{margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;}
body.page-template-template-consigli .chip,
body.page-template-template-consigli-php .chip{border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.84);
  border-radius: 999px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: rgba(16,26,21,.70);
  cursor: pointer;
  user-select: none;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;}
body.page-template-template-consigli .chip:hover,
body.page-template-template-consigli-php .chip:hover{transform: translateY(-1px);
  border-color: rgba(16,26,21,.16);}
body.page-template-template-consigli .chip.active,
body.page-template-template-consigli-php .chip.active{background: rgba(144,166,155,.16);
  border-color: rgba(111,142,129,.24);
  color: rgba(16,26,21,.92);}
body.page-template-template-consigli .sectionHead,
body.page-template-template-consigli-php .sectionHead{display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(16,26,21,.10);
  margin-bottom: 18px;}
body.page-template-template-consigli .list,
body.page-template-template-consigli-php .list{display: grid;
  gap: 0;}
body.page-template-template-consigli .item,
body.page-template-template-consigli-php .item{padding: 22px 0;
  border-bottom: 1px solid rgba(16,26,21,.10);}
body.page-template-template-consigli .item:last-child,
body.page-template-template-consigli-php .item:last-child{border-bottom: 0;
  padding-bottom: 0;}
body.page-template-template-consigli .itemHead,
body.page-template-template-consigli-php .itemHead{display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap: 14px;
  flex-wrap:wrap;}
body.page-template-template-consigli .badge,
body.page-template-template-consigli-php .badge{font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(16,26,21,.58);
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.70);}
body.page-template-template-consigli .desc,
body.page-template-template-consigli-php .desc{margin: 10px 0 0;
  color: rgba(16,26,21,.72);
  font-size: 14.5px;
  line-height: 2.0;
  max-width: 80ch;}
body.page-template-template-consigli .desc p,
body.page-template-template-consigli-php .desc p{margin: 0 0 10px;}
body.page-template-template-consigli .mediaRow,
body.page-template-template-consigli-php .mediaRow{margin-top: 14px;
  display:grid;
  grid-template-columns: 220px 1fr;
  gap: 18px;
  align-items:start;}
body.page-template-template-consigli .mediaRow.oneCol,
body.page-template-template-consigli-php .mediaRow.oneCol{grid-template-columns: 1fr;}
body.page-template-template-consigli figure,
body.page-template-template-consigli-php figure{margin:0;
  border-radius: 28px;
  overflow:hidden;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);}
body.page-template-template-consigli figure img,
body.page-template-template-consigli-php figure img{width:100%;
  height: 210px;
  object-fit:cover;
  display:block;}
body.page-template-template-consigli figcaption,
body.page-template-template-consigli-php figcaption{padding: 10px 12px 12px;
  font-size: 12px;
  color: rgba(16,26,21,.60);
  line-height: 1.6;}
body.page-template-template-consigli .steps,
body.page-template-template-consigli-php .steps{margin: 0;
  padding-left: 18px;
  color: rgba(16,26,21,.70);
  font-size: 13.5px;
  line-height: 1.9;}
body.page-template-template-consigli .steps li,
body.page-template-template-consigli-php .steps li{margin: 8px 0;}
body.page-template-template-consigli .videoWrap,
body.page-template-template-consigli-php .videoWrap{margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid rgba(16,26,21,.10);}
body.page-template-template-consigli .video,
body.page-template-template-consigli-php .video{margin-top: 14px;
  border-radius: 34px;
  border: 1px solid rgba(16,26,21,.10);
  overflow:hidden;
  background: #000;
  position:relative;
  aspect-ratio: 16/9;}
body.page-template-template-consigli .video iframe,
body.page-template-template-consigli-php .video iframe{width:100%;
  height:100%;
  border:0;
  display:block;}
body.page-template-template-consigli .downloadRow,
body.page-template-template-consigli-php .downloadRow{margin-top: 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  flex-wrap:wrap;
  padding: 16px 0 0;
  border-top: 1px solid rgba(16,26,21,.10);}
@media (max-width: 1050px){body.page-template-template-consigli .layout,
  body.page-template-template-consigli-php .layout{grid-template-columns: 1fr;}
body.page-template-template-consigli .side,
  body.page-template-template-consigli-php .side{position: relative;
    top: 0;
    padding: 0;}}
@media (max-width: 980px){body.page-template-template-consigli .mediaRow,
  body.page-template-template-consigli-php .mediaRow{grid-template-columns: 1fr;}
body.page-template-template-consigli figure img,
  body.page-template-template-consigli-php figure img{height: 220px;}}
body[class*="template-trattamenti"] .layout{display: grid ;
  grid-template-columns: 320px 1fr ;
  gap: 34px ;
  align-items: start ;}
body[class*="template-trattamenti"] .index{display: block ;
  position: sticky ;
  top: 96px ;
  padding: 16px 0 ;}
body[class*="template-trattamenti"] .index h3{margin: 0 ;
  font-size: 12px ;
  letter-spacing: .18em ;
  text-transform: uppercase ;
  color: rgba(16,26,21,.55) ;}
body[class*="template-trattamenti"] .indexNav{margin-top: 12px ;
  display: grid ;
  gap: 10px ;}
body[class*="template-trattamenti"] .iLink{display:flex ;
  align-items:center ;
  justify-content:space-between ;
  gap: 12px ;
  padding: 10px 0 ;
  border-bottom: 1px solid rgba(16,26,21,.10) ;
  color: rgba(16,26,21,.72) ;
  text-decoration: none ;
  transition: color .18s ease ;}
body[class*="template-trattamenti"] .iLink:hover{color: rgba(16,26,21,.92) ;}
body[class*="template-trattamenti"] .iLink small{color: rgba(16,26,21,.55) ; font-size: 12px ;}
body[class*="template-trattamenti"] .iLink .bullet{width: 8px ; height: 8px ;
  border-radius: 999px ;
  background: rgba(16,26,21,.18) ;
  transition: background .18s ease, transform .18s ease ;
  flex:0 0 auto ;}
body[class*="template-trattamenti"] .iLink.active .bullet{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1)) ;
  transform: scale(1.15) ;
  box-shadow: 0 12px 26px rgba(111,142,129,.22) ;}
@media (max-width: 1050px){body[class*="template-trattamenti"] .layout{grid-template-columns: 1fr ;}
body[class*="template-trattamenti"] .index{position: relative ;
    top: 0 ;
    padding: 0 ;}}
body[class*="template-galleria"] .galleryWrap .olGalGrid{margin-top: 14px ;
  columns: 3 240px ;
  column-gap: 14px ;
  display: block ;}
body[class*="template-galleria"] .galleryWrap .olGalItem{break-inside: avoid ;
  margin: 0 0 14px ;
  border-radius: 26px ;
  overflow: hidden ;
  border: 1px solid rgba(16,26,21,.10) ;
  background: rgba(255,255,255,.62) ;
  box-shadow: 0 18px 60px rgba(16,26,21,.10) ;
  transform: translateZ(0) ;}
body[class*="template-galleria"] .galleryWrap .thumb{position: relative ;
  overflow: hidden ;
  border-bottom: 1px solid rgba(16,26,21,.08) ;
  background:
    radial-gradient(600px 240px at 20% 0%, rgba(144,166,155,.22), transparent 60%),
    radial-gradient(520px 260px at 90% 10%, rgba(111,142,129,.14), transparent 60%),
    rgba(255,255,255,.72) ;}
body[class*="template-galleria"] .galleryWrap .thumb img{display: block ;
  width: 100% ;
  height: auto ;
  transform: scale(1.02);
  transition: transform .55s ease;
  will-change: transform;}
body[class*="template-galleria"] .galleryWrap .olGalItem:hover .thumb img{transform: scale(1.06);}
body[class*="template-galleria"] .galleryWrap .overlay{position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.42));
  opacity:0;
  transition: opacity .35s ease;
  display:flex;
  align-items:flex-end;
  padding: 12px;
  gap: 10px;}
body[class*="template-galleria"] .galleryWrap .olGalItem:hover .overlay{opacity:1;}
body[class*="template-galleria"] .galleryWrap .cap{padding: 12px 12px 13px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap: 10px;}
body[class*="template-galleria"] .galleryWrap .cap strong{display:block;
  font-size: 13px;
  color: rgba(16,26,21,.92);
  margin-bottom: 4px;}
body[class*="template-galleria"] .galleryWrap .cap small{display:block;
  font-size: 12px;
  line-height: 1.6;
  color: rgba(16,26,21,.62);
  max-width: 34ch;}
body[class*="template-galleria"] #lb{position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(0,0,0,.42);
  backdrop-filter: blur(10px);
  z-index: 2000;}
body[class*="template-galleria"] #lb[aria-hidden="true"]{display:none;}
body[class*="template-galleria"] #lb .lbCard{width: min(1040px, 100%);
  border-radius: 28px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.35);
  box-shadow: 0 30px 90px rgba(16,26,21,.25);
  overflow:hidden;}
body[class*="template-galleria"] #lb .lbHead{display:flex; justify-content:space-between; align-items:center;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(16,26,21,.10);}
body[class*="template-galleria"] #lb .lbMedia{display:grid;
  grid-template-columns: 1.15fr .85fr;}
body[class*="template-galleria"] #lb #lbImg{width:100%; height:100%; object-fit: cover;
  max-height: 70vh;
  display:block;
  background: rgba(0,0,0,.05);}
body[class*="template-galleria"] #lb .lbSide{padding: 16px;
  border-left: 1px solid rgba(16,26,21,.10);}
@media (max-width: 860px){body[class*="template-galleria"] #lb .lbMedia{grid-template-columns: 1fr;}
body[class*="template-galleria"] #lb .lbSide{border-left: 0; border-top: 1px solid rgba(16,26,21,.10);}
body[class*="template-galleria"] #lb #lbImg{max-height: 48vh;}}
.shareBar{display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap;}
.shareBtns{display:flex; gap:10px; align-items:center; flex-wrap:wrap;}
.sbtn, .copyBtn{display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid rgba(16,26,21,.10); background:rgba(255,255,255,.7); border-radius:999px; padding:10px 12px; cursor:pointer;}
.sbtn svg, .copyBtn svg{width:18px; height:18px;}
@media (max-width: 560px){.shareBar{align-items:flex-start;}
.copyBtn{width:100%; justify-content:center;}}
body.blog .navigation.pagination,
body.archive .navigation.pagination,
body[class*="template-news"] .navigation.pagination,
body.blog .nav-links,
body.archive .nav-links,
body[class*="template-news"] .nav-links{margin-top: 22px ;
  display: flex ;
  justify-content: center ;}
body.blog .navigation.pagination .nav-links,
body.archive .navigation.pagination .nav-links,
body[class*="template-news"] .navigation.pagination .nav-links{display: flex ;
  flex-wrap: wrap ;
  gap: 10px ;
  align-items: center ;
  justify-content: center ;}
body.blog .page-numbers,
body.archive .page-numbers,
body[class*="template-news"] .page-numbers{display: inline-flex ;
  align-items: center ;
  justify-content: center ;
  min-height: 40px ;
  padding: 10px 14px ;
  border-radius: 999px ;
  border: 1px solid rgba(16,26,21,.12) ;
  background: rgba(255,255,255,.72) ;
  color: rgba(16,26,21,.82) ;
  text-decoration: none ;
  line-height: 1 ;
  white-space: nowrap ;
  box-shadow: 0 10px 35px rgba(16,26,21,.08) ;
  transition: transform .15s ease, background .15s ease;}
body.blog .page-numbers:hover,
body.archive .page-numbers:hover,
body[class*="template-news"] .page-numbers:hover{transform: translateY(-1px);
  background: rgba(255,255,255,.92) ;}
body.blog .page-numbers.current,
body.archive .page-numbers.current,
body[class*="template-news"] .page-numbers.current{background: rgba(144,166,155,.35) ; /* sage */
  border-color: rgba(144,166,155,.55) ;
  color: rgba(16,26,21,.92) ;
  font-weight: 600 ;}
body.blog .page-numbers.dots,
body.archive .page-numbers.dots,
body[class*="template-news"] .page-numbers.dots{box-shadow: none ;
  background: transparent ;
  border: 0 ;
  padding: 0 6px ;
  min-height: auto ;}
body.blog .page-numbers.prev,
body.blog .page-numbers.next,
body.archive .page-numbers.prev,
body.archive .page-numbers.next,
body[class*="template-news"] .page-numbers.prev,
body[class*="template-news"] .page-numbers.next{gap: 8px ;}
body.blog .page-numbers.prev::before,
body.archive .page-numbers.prev::before,
body[class*="template-news"] .page-numbers.prev::before{content: "‹";
  opacity: .75;}
body.blog .page-numbers.next::after,
body.archive .page-numbers.next::after,
body[class*="template-news"] .page-numbers.next::after{content: "›";
  opacity: .75;}
@media (max-width: 520px){body.blog .page-numbers,
  body.archive .page-numbers,
  body[class*="template-news"] .page-numbers{min-height: 38px ;
    padding: 10px 12px ;
    font-size: 13px ;}}
body[class*="template-curriculum"] .cvLayout{display: grid ;
  grid-template-columns: 1fr 340px ;
  gap: 18px ;
  align-items: start ;}
body[class*="template-curriculum"] .cvSide{position: relative;}
@media (max-width: 860px){body[class*="template-curriculum"] .cvLayout{grid-template-columns: 1fr ;}
body[class*="template-curriculum"] .cvSide{order: -1 ;}
body[class*="template-curriculum"] .cvMain{order: 1 ;}}
body[class*="template-curriculum"] .portrait{overflow: hidden;}
body[class*="template-curriculum"] .list{margin: 12px 10px 12px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;}
body[class*="template-curriculum"] .li{padding: 12px 12px;
  border-radius: 26px;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.70);
  box-shadow: var(--sh3);
  color: rgba(16,26,21,.74);
  font-size: 13px;
  line-height: 1.85;
  position: relative;}
body[class*="template-curriculum"] .li:before{content:"";
  position:absolute;
  left: 14px; top: 18px;
  width: 7px; height: 7px;
  border-radius: 999px;
  background: rgba(111,142,129,.85);
  box-shadow: 0 14px 32px rgba(111,142,129,.22);}
body[class*="template-curriculum"] .li .content{padding-left: 18px;}
body[class*="template-curriculum"] .li b{color: rgba(16,26,21,.92); font-weight: 600;}
body[class*="template-consigli"] .itemHead{display: flex ;
  align-items: baseline ;
  justify-content: space-between ;
  gap: 14px ;
  flex-wrap: wrap ;}
body[class*="template-consigli"] .itemHead .badge{position: static ;        /* evita conflitti con badge assoluti (curriculum) */
  display: inline-flex ;
  align-items: center ;
  justify-content: center ;
  line-height: 1 ;
  white-space: nowrap ;

  font-size: 12px ;
  letter-spacing: .14em ;
  text-transform: uppercase ;
  color: rgba(16,26,21,.58) ;

  padding: 8px 10px ;
  border-radius: 999px ;
  border: 1px solid rgba(16,26,21,.10) ;
  background: rgba(255,255,255,.70) ;
  box-shadow: var(--sh3) ;  /* mancava rispetto alla demo */}
body[class*="template-consigli"] .steps{margin: 0 ;
  padding-left: 18px ;
  color: rgba(16,26,21,.70) ;
  font-size: 13.5px ;
  line-height: 1.9 ;}
body[class*="template-consigli"] .steps li{margin: 8px 0 ;}
body[class*="template-consigli"] .video{border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);}
body[class*="template-consigli"] .video iframe{width: 100% ;
  aspect-ratio: 16 / 9 ;
  height: auto ;
  border: 0 ;
  display: block ;}
body[class*="template-consigli"] .itemHead .badge{position: static ;
  display: inline-flex ;
  align-items: center ;
  justify-content: center ;
  line-height: 1 ;
  white-space: nowrap ;

  font-size: 12px ;
  letter-spacing: .14em ;
  text-transform: uppercase ;
  color: rgba(16,26,21,.58) ;

  padding: 8px 10px ;
  border-radius: 999px ;
  border: 1px solid rgba(16,26,21,.10) ;
  background: rgba(255,255,255,.70) ;
  box-shadow: var(--sh3) ;}
body[class*="template-consigli"] .video iframe,
body[class*="template-consigli"] .video video,
body[class*="template-consigli"] .video embed{width: 100% ;
  aspect-ratio: 16 / 9 ;
  height: auto ;
  border: 0 ;
  display:block ;}
.tecnichePage .layout{display:grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 34px;
  align-items:start;}
.tecnichePage .tecnicheContent{min-width: 0;}
.tecnichePage .index{position: sticky;
  top: 96px;}
.tecnichePage .indexNav{display:grid;
  gap:0;}
.tecnichePage .iLink{display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 0;
  border-bottom:1px solid rgba(16,26,21,.10);
  color:rgba(16,26,21,.72);}
.tecnichePage .iLinkMain{display:flex;
  align-items:center;
  gap:10px;
  min-width:0;}
.tecnichePage .iLink small{flex:0 0 auto;
  color:rgba(16,26,21,.55);
  font-size:12px;}
.tecnichePage .bullet{width:8px;
  height:8px;
  border-radius:999px;
  background:rgba(16,26,21,.18);
  flex:0 0 auto;}
.tecnichePage .iLink.active .bullet{background:linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1));}
.tecnichePage .sectionHead{display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(16,26,21,.10);
  margin-bottom:18px;}
.tecnichePage .sectionHead h2{margin:0;
  font-size:30px;
  line-height:1.15;}
.tecnichePage .sectionHeadText,
.tecnichePage .sectionHead p{margin:0;
  max-width:58ch;
  color:rgba(16,26,21,.66);}
.tecnichePage .block{padding:22px 0;
  border-bottom:1px solid rgba(16,26,21,.10);}
.tecnichePage .block h3{margin:0;
  font-size:22px;
  line-height:1.25;}
.tecnichePage .sub{margin:8px 0 0;
  color:rgba(16,26,21,.64);
  font-size:13px;
  line-height:1.7;
  max-width:70ch;}
.tecnichePage .split{margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:24px;
  align-items:start;}
.tecnichePage .split--full{grid-template-columns:minmax(0, 1fr);}
.tecnichePage .prose{min-width:0;
  max-width:none;
  width:100%;
  color:rgba(16,26,21,.74);
  font-size:14.5px;
  line-height:2;}
.tecnichePage .prose p{margin:0 0 12px;
  max-width:none;}
.tecnichePage .figureLite{margin:0;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(16,26,21,.08);
  box-shadow:0 10px 24px rgba(16,26,21,.08);
  background:rgba(255,255,255,.92);}
.tecnichePage .figureLite img{width:100%;
  height:240px;
  display:block;
  object-fit:cover;}
.tecnichePage .figureLite figcaption{padding:10px 12px 12px;
  font-size:12px;
  color:rgba(16,26,21,.60);
  line-height:1.6;}
.tecnichePage .note{margin-top:14px;
  padding-left:14px;
  border-left:2px solid rgba(111,142,129,.35);
  color:rgba(16,26,21,.70);
  font-size:13.5px;
  line-height:1.9;}
.tecnichePage .techSummary{margin:10px 0 0;
  padding-left:18px;}
.tecnichePage .techSummary li{margin:0 0 8px;}
.tecnichePage .faqSection{margin-top:32px;}
.tecnichePage .faq{display:grid;
  gap:12px;}
.tecnichePage .faq details{border:1px solid rgba(16,26,21,.10);
  border-radius:18px;
  background:rgba(255,255,255,.7);
  padding:0;
  overflow:hidden;}
.tecnichePage .faq summary{cursor:pointer;
  list-style:none;
  padding:18px 20px;
  font-weight:600;}
.tecnichePage .faq summary::-webkit-details-marker{display:none;}
.tecnichePage .faq details .prose{padding:0 20px 18px;}
.tecnichePage .logoBlock{margin-top:32px;
  padding:22px 0 0;
  border-top:1px solid rgba(16,26,21,.10);}
.tecnichePage .logoHead{display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;}
.tecnichePage .logoHead h2{margin:8px 0 0;
  font-size:22px;}
.tecnichePage .logoHead p{margin:0;
  max-width:56ch;
  color:rgba(16,26,21,.66);}
.tecnichePage .logoRow{margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:14px;}
.tecnichePage .logoItem{display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid rgba(16,26,21,.10);
  background:rgba(255,255,255,.86);
  text-decoration:none;
  color:inherit;}
.tecnichePage .logoItem img{max-height:28px;
  width:auto;
  display:block;}
.tecnichePage .logoItem span{font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(16,26,21,.62);}
@media (max-width: 1050px){.tecnichePage .layout{grid-template-columns:1fr;}
.tecnichePage .index{position:relative;
    top:auto;}}
@media (max-width: 980px){.tecnichePage .split{grid-template-columns:1fr;}
.tecnichePage .logoHead,
  .tecnichePage .sectionHead{flex-direction:column;
    align-items:flex-start;}}
.tecnichePage .layout{display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:40px;}
.tecnichePage .tecnicheContent{min-width:0;}
.tecnichePage .split{display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:28px;
  align-items:start;}
.tecnichePage .prose{min-width:0;
  width:100%;
  max-width:620px;}
.tecnichePage .logoBlock--wide{/* annulla lo stile "riga" attuale */
  border-top: 0 ;
  padding: 22px ;
  margin-top: 34px ;

  /* stile card */
  border-radius: var(--radius3);
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.90);
  box-shadow: var(--shadow3);
  position: relative;
  overflow: hidden;}
.tecnichePage .logoBlock--wide:before{content:"";
  position:absolute;
  inset:auto -120px -120px auto;
  width:380px; height:380px;
  background: radial-gradient(circle at 30% 30%, rgba(144,166,155,.18), transparent 60%);
  opacity:.9;
  transform: rotate(12deg);
  pointer-events:none;}
.tecnichePage .logoBlock--wide .logoHead{position: relative;
  z-index: 1;
  margin-bottom: 14px;}
.tecnichePage .logoBlock--wide .logoRow{position: relative;
  z-index: 1;

  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;}
.tecnichePage .logoBlock--wide .logoItem{height: 70px;
  border-radius: 18px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow3);

  display:flex;
  align-items:center;
  justify-content:center;

  padding: 12px;
  text-decoration: none;}
.tecnichePage .logoBlock--wide .logoItem img{max-height: 46px;
  max-width: 100%;
  width: auto;
  display: block;
  object-fit: contain;}
@media (max-width: 980px){.tecnichePage .logoBlock--wide .logoRow{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (max-width: 520px){.tecnichePage .logoBlock--wide .logoRow{grid-template-columns: repeat(2, minmax(0, 1fr));}
.tecnichePage .logoBlock--wide .logoItem{height: 64px;}}
.tecnichePage .prose{max-width:none ;}
body[class*="template-trattamenti"] .olTreatment--card{border: 1px solid rgba(16,26,21,.08) ;
  background: rgba(255,255,255,.92) ;
  box-shadow: var(--shadow3) ;
  border-radius: var(--radius3) ;

  /* override dello stile .block (che è “a lista”) */
  padding: 18px ;
  margin: 18px 0 ;
  border-bottom: 0 ;}
body[class*="template-trattamenti"] .olTreatment--card + .olTreatment--card{margin-top: 16px ;}
body[class*="template-trattamenti"] .split.isReverse{grid-template-columns: 340px minmax(0,1fr) ;}
body[class*="template-trattamenti"] .split.isReverse .olSide{order: -1;}
body[class*="template-trattamenti"] .olTreatment--stack .split{grid-template-columns: 1fr ;}
body[class*="template-trattamenti"] .olTreatment--stack .olSide{order: -1;}
body[class*="template-trattamenti"] .olTreatment--stack figure img{height: 300px;}
@media (max-width: 980px){body[class*="template-trattamenti"] .split.isReverse{grid-template-columns: 1fr ;}}
body[class*="template-trattamenti"] .sectionHead{display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(16,26,21,.10);
  margin-bottom:18px;}
body[class*="template-trattamenti"] .sectionHead h2{margin:0;
  font-size:30px;
  line-height:1.15;}
body[class*="template-trattamenti"] .sectionHead p{margin:0;
  color: rgba(16,26,21,.66);
  font-size:14px;
  line-height:1.8;
  max-width:58ch;}
body[class*="template-trattamenti"] .block{padding:22px 0;
  border-bottom:1px solid rgba(16,26,21,.10);}
body[class*="template-trattamenti"] .block:last-child{border-bottom:0;
  padding-bottom:0;}
body[class*="template-trattamenti"] .block h3{margin:0;
  font-size:22px;
  letter-spacing:-.3px;
  line-height:1.25;}
body[class*="template-trattamenti"] .sub{margin:8px 0 0;
  color: rgba(16,26,21,.64);
  font-size:13px;
  line-height:1.7;
  max-width:78ch;}
body[class*="template-trattamenti"] .split{margin-top:16px;
  display:grid;
  grid-template-columns: 1fr 340px;
  gap:22px;
  align-items:start;}
body[class*="template-trattamenti"] .prose{color: rgba(16,26,21,.74);
  font-size:14.5px;
  line-height:2.0;
  min-width:0;
  max-width:none;}
body[class*="template-trattamenti"] .prose p{margin:0 0 12px;}
body[class*="template-trattamenti"] .prose ul{margin: 0 0 12px 18px; padding:0;}
body[class*="template-trattamenti"] .prose li{margin: 8px 0;}
body[class*="template-trattamenti"] .note{margin-top:12px;
  padding-left:14px;
  border-left:2px solid rgba(111,142,129,.35);
  color: rgba(16,26,21,.70);
  font-size:13.5px;
  line-height:1.9;}
body[class*="template-trattamenti"] .note--side{margin-top:14px;}
body[class*="template-trattamenti"] .hrSoft{height:1px;
  background: rgba(16,26,21,.10);
  margin: 16px 0;
  border:0;}
body[class*="template-trattamenti"] figure{margin:0;
  border-radius:28px;
  overflow:hidden;
  border: 1px solid rgba(16,26,21,.08);
  box-shadow: 0 10px 24px rgba(16,26,21,.08);
  background: rgba(255,255,255,.92);}
body[class*="template-trattamenti"] figure img{width:100%;
  height:260px;
  object-fit:cover;
  display:block;
  filter: grayscale(.06) contrast(1.02);}
body[class*="template-trattamenti"] figcaption{padding:10px 12px 12px;
  font-size:12px;
  color: rgba(16,26,21,.60);
  line-height:1.6;}
body[class*="template-trattamenti"] .figureLite{border-radius:28px;
  border: 1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.65);
  box-shadow: 0 10px 24px rgba(16,26,21,.08);
  padding:14px;}
body[class*="template-trattamenti"] .figureLite .ph{width:100%;
  height:210px;
  border-radius:22px;
  border: 1px dashed rgba(16,26,21,.18);
  display:flex;
  align-items:center;
  justify-content:center;
  color: rgba(16,26,21,.55);
  font-size:12px;
  text-align:center;
  padding:14px;
  background: radial-gradient(600px 220px at 30% 0%, rgba(144,166,155,.14), transparent 60%);}
body[class*="template-trattamenti"] .cols{margin-top:10px;
  columns:2;
  column-gap:28px;}
body[class*="template-trattamenti"] .cols li{break-inside: avoid;}
body[class*="template-trattamenti"] .mt14{margin-top:14px;}
@media (max-width:1050px){body[class*="template-trattamenti"] .split{grid-template-columns: 1fr;}
body[class*="template-trattamenti"] .cols{columns:1;}
body[class*="template-trattamenti"] figure img{height:230px;}}
body[class*="template-trattamenti"] .sectionHead p{margin:0;
  color:rgba(16,26,21,.66);
  font-size:14px;
  line-height:1.8;
  max-width:58ch;}
body[class*="template-trattamenti"] .sub{margin:8px 0 0;
  color:rgba(16,26,21,.64);
  font-size:13px;
  line-height:1.7;
  max-width:78ch;}
body[class*="template-trattamenti"] .split{margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:22px;
  align-items:start;}
body[class*="template-trattamenti"] .prose{color:rgba(16,26,21,.74);
  font-size:14.5px;
  line-height:2;
  min-width:0;}
body[class*="template-trattamenti"] .prose ul{margin:0 0 12px 18px; padding:0;}
body[class*="template-trattamenti"] .prose li{margin:8px 0;}
body[class*="template-trattamenti"] .note{margin-top:12px;
  padding-left:14px;
  border-left:2px solid rgba(111,142,129,.35);
  color:rgba(16,26,21,.70);
  font-size:13.5px;
  line-height:1.9;}
body[class*="template-trattamenti"] .sideNote{margin-top:14px;}
body[class*="template-trattamenti"] figure{margin:0;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(16,26,21,.08);
  box-shadow:0 10px 24px rgba(16,26,21,.08);
  background:rgba(255,255,255,.92);}
body[class*="template-trattamenti"] figure img{width:100%;
  height:260px;
  object-fit:cover;
  display:block;
  filter:grayscale(.06) contrast(1.02);}
body[class*="template-trattamenti"] figcaption{padding:10px 12px 12px;
  font-size:12px;
  color:rgba(16,26,21,.60);
  line-height:1.6;}
body[class*="template-trattamenti"] .pediFigure{margin-top:14px;}
body[class*="template-trattamenti"] .cols li{break-inside:avoid;}
body[class*="template-trattamenti"] .hrSoft{height:1px;
  background:rgba(16,26,21,.10);
  margin:16px 0;}
body[class*="template-trattamenti"] .figureLite{border-radius:28px;
  border:1px solid rgba(16,26,21,.10);
  background:rgba(255,255,255,.76);
  box-shadow:0 10px 24px rgba(16,26,21,.06);
  overflow:hidden;}
body[class*="template-trattamenti"] .figureLite .ph{min-height:210px;
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:rgba(16,26,21,.55);
  font-size:13px;
  line-height:1.7;
  border:2px dashed rgba(16,26,21,.12);
  border-radius:22px;
  margin:14px;
  background:rgba(255,255,255,.62);}
body[class*="template-trattamenti"] .sideStack{display:block;}
@media (max-width: 980px){body[class*="template-trattamenti"] .split{grid-template-columns: 1fr;}
body[class*="template-trattamenti"] figure img{height:220px;}}
.trattamentiPage figure img{height: 260px;}
.trattamentiPage .tCite{margin-top: 10px;
  color: rgba(16,26,21,.60);
  font-size: 12.5px;
  line-height: 1.6;}
@media (max-width: 780px){.trattamentiPage .cols{columns: 1;}}
body[class*="template-trattamenti"] .figureLite .ph{display:flex; align-items:center; justify-content:center;
  text-align:center;
  display: flex;}
body[class*="template-trattamenti"] .figureLite .ph.hasImg{padding:0;}
body[class*="template-trattamenti"] .figureLite .ph.hasImg img{width:100%; height:100%;
  object-fit:contain; display:flex;}
@media (max-width:560px){body[class*="template-trattamenti"] .iLink{display:grid;
    grid-template-columns: 1fr auto;
    gap:10px;
    align-items:center;}
body[class*="template-trattamenti"] .iLink small{white-space:nowrap;}}
body[class*="template-trattamenti"] .tRight{justify-self: stretch ;}
body[class*="template-trattamenti"] .tRight .figureLite{width: 100% ;
  padding: 14px ;   /* forza padding simmetrico */
  margin: 0 auto ;  /* centra eventuale box non-stretch */}
body[class*="template-trattamenti"] .tRight .figureLite .ph{width: 100% ;
  max-width: 100% ;
  margin: 0 auto ;  /* se qualche regola lo restringe, resta centrato */
  box-sizing: border-box ;}
body[class*="template-trattamenti"] .figureLite .ph{position: relative ;
  width: 100% ;
  overflow: hidden ;
  border: 0 ;            /* evita doppio bordo se già presente */
  border-radius: 26px ;  /* forma del contenitore */
  background: transparent ;}
body[class*="template-trattamenti"] .figureLite .ph::after{content: "" ;
  position: absolute ;
  inset: 18px ;                  /* distanza dal bordo esterno (come demo) */
  border: 2px dashed rgba(120, 135, 128, .35) ;
  border-radius: 20px ;          /* arrotondamento dashed interni */
  pointer-events: none ;
  z-index: 2 ;}
body[class*="template-trattamenti"] .figureLite .ph.hasImg img{position: relative ;
  z-index: 1 ;
  width: 100% ;
  height: 100% ;
  display: block ;
  border-radius: 26px ;          /* stessa forma del contenitore */
  object-fit: cover ;          /* illustrazioni: meglio contain */
  /* se vuoi che riempia tagliando: cambia in cover */}
footer.olFooter .foot h5{font-size: 13px;
  letter-spacing: .18em;
  text-transform: uppercase;}
footer.olFooter .footLinks{list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 8px;}
footer.olFooter .footLinks li{margin: 0; padding: 0;}
footer.olFooter .footLinks a{text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;}
footer.olFooter .footConsent a{text-decoration: underline;}
footer.olFooter .bottomline{align-items: center;}
footer.olFooter .bottomline .credits{display:flex;
  gap: 8px;
  align-items: center;
  white-space: nowrap;}
footer.olFooter .bottomline .creditsPrefix{font-weight: 600;}
footer.olFooter .bottomline .creditsLink{text-decoration: underline; text-underline-offset: 4px;}
@media (max-width: 640px){footer.olFooter .bottomline .credits{white-space: normal;}}
footer.olFooter .footForm form,
footer.olFooter .footForm .fluentform,
footer.olFooter .footForm .ff-el-form{width: 100%;}
footer.olFooter .footForm .ff-el-group{margin-bottom: 12px ;}
footer.olFooter .footForm .ff-el-input--label{display:none ;}
footer.olFooter .footForm .ff-el-form-control{width: 100% ;
  min-height: 56px ;
  border-radius: 14px ;
  border: 1px solid rgba(16,26,21,.12) ;
  background: rgba(255,255,255,.92) ;
  box-shadow: var(--shadow3);
  padding: 14px 14px ;}
footer.olFooter .footForm .ff-btn,
footer.olFooter .footForm .ff-btn-submit{width: 100% ;
  min-height: 58px ;
  border-radius: 14px ;
  font-size: 20px ;
  font-weight: 800 ;}
@media (max-width: 980px){body{padding-bottom: calc(84px + env(safe-area-inset-bottom)) ;}
footer{padding-bottom: calc(84px + env(safe-area-inset-bottom)) ;}}
footer.olFooter .footForm #fluentform_2,
footer.olFooter .footForm form[id="fluentform_2"],
footer.olFooter .footForm .fluentform,
footer.olFooter .footForm .ff-el-form{width: 100%;}
footer.olFooter .footForm #fluentform_2 .ff-el-input--label,
footer.olFooter .footForm form[id="fluentform_2"] .ff-el-input--label{display:none ;}
footer.olFooter .footForm #fluentform_2 .ff-el-form-control,
footer.olFooter .footForm form[id="fluentform_2"] .ff-el-form-control{width:100% ;
  min-height:56px ;
  border-radius:14px ;
  padding:14px 14px ;}
footer.olFooter .footForm #fluentform_2 .ff-btn,
footer.olFooter .footForm #fluentform_2 .ff-btn-submit,
footer.olFooter .footForm form[id="fluentform_2"] .ff-btn,
footer.olFooter .footForm form[id="fluentform_2"] .ff-btn-submit{width:100% ;
  min-height:58px ;
  border-radius:14px ;
  font-size:20px ;
  font-weight:800 ;}
footer.olFooter .footForm #fluentform_2 .ff-btn-submit{background: linear-gradient(135deg, rgba(144,166,155,1), rgba(111,142,129,1)) ;
  border-color: rgba(111,142,129,.28) ;
  color: #07110d ;}
footer .ff_form_instance_2 form{position: relative;}
footer .ff_form_instance_2 .ff_newsletter_wrap,
footer .ff_form_instance_2 .ff-el-group,
footer .ff_form_instance_2 .ff-el-input--content{position: relative;}
footer .ff_form_instance_2 input[type="email"],
footer .ff_form_instance_2 .ff-news-email input{width: 100%;
  border-radius: 18px;
  padding-right: 140px; /* spazio bottone */
  height: 56px;}
footer .ff_form_instance_2 button[type="submit"],
footer .ff_form_instance_2 .ff-news-submit button{position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  height: 42px;
  padding: 0 18px;
  border-radius: 14px;
  z-index: 2;
  white-space: nowrap;}
.drawer[hidden]{display:none ;}
.drawer{position: fixed;
  inset: 0;
  z-index: 100000; /* sopra topbar e bottom bar */
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease;}
.drawer.open{opacity: 1;
  pointer-events: auto;}
.drawerBackdrop{position:absolute;
  inset:0;
  z-index:0;
  background: rgba(0,0,0,.28);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  opacity: 0;
  transition: opacity .22s ease;}
.drawer.open .drawerBackdrop{opacity: 1;}
.drawerInner{position:absolute;
  z-index:1;
  top: calc(10px + env(safe-area-inset-top));
  right: 10px;
  left: 10px;
  margin-left:auto;
  max-width: 520px;
  border-radius: 22px;
  border:1px solid rgba(16,26,21,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 30px 90px rgba(16,26,21,.18);
  overflow:hidden;

  transform: translateY(-10px) scale(.985);
  opacity: 0;
  transition: transform .28s cubic-bezier(.2,.8,.2,1), opacity .22s ease;}
.drawer.open .drawerInner{transform: translateY(0) scale(1);
  opacity: 1;}
.drawerTop{border-bottom: 1px solid rgba(16,26,21,.08);}
.drawerClose{border: 1px solid rgba(16,26,21,.12);
  background: rgba(255,255,255,.92);}
.drawerLinks a{color: rgba(16,26,21,.82);
  border: 1px solid rgba(16,26,21,.08);
  background: rgba(255,255,255,.88);}
.drawerCta{border-top: 1px solid rgba(16,26,21,.08);}
html.olMenuOpen .topbar,
html.olMenuOpen header{pointer-events: none;}
#siteMenu{position: fixed ;
  inset: 0 ;}
#siteMenu .menuPanel{position: fixed ;
  top: 0 ;
  right: 0 ;
  height: 100vh ;
  max-height: 100vh ;
  overflow: hidden ; /* impedisce lo scroll dell’intero pannello */}
#siteMenu .menuPanel .menuBody{overflow-y: auto ;
  -webkit-overflow-scrolling: touch ;
  max-height: calc(100vh - 120px) ; /* 120px = header pannello + padding */
  padding-bottom: calc(24px + env(safe-area-inset-bottom)) ;}
body.menuOpen{overflow: hidden ;
  height: 100% ;}
#siteMenu{position: fixed ;
  inset: 0 ;
  z-index: 999999 ;}
#siteMenu .menuBackdrop{position: absolute ;
  inset: 0 ;
  background: rgba(245, 245, 242, .98) ; /* quasi pieno */
  /* se lo vuoi totalmente pieno: usa #f5f5f2 */}
#siteMenu .menuPanel{position: fixed ;
  top: 0 ;
  right: 0 ;
  height: 100vh ;
  max-height: 100vh ;
  overflow: hidden ;
  z-index: 1 ;}
#siteMenu .menuPanel .menuBody{overflow-y: auto ;
  -webkit-overflow-scrolling: touch ;
  max-height: calc(100vh - 120px) ; /* header menu + padding */
  padding-bottom: calc(24px + env(safe-area-inset-bottom)) ;}
html, body{height: 100%;}
body.menuOpen .topbar,
body.menuOpen .siteTopbar,
body.menuOpen .oTopbar{opacity: 0 ;
  visibility: hidden ;
  pointer-events: none ;}
.topbar{position: relative ;
  top: auto ;
  z-index: 1 ;}
header{position: sticky ;
  top: 0 ;
  z-index: 200 ;
  background: rgba(245,245,242,.92); /* evita trasparenze quando scrolli */
  backdrop-filter: blur(10px);}
:root{--topbar-h: 0px ;}
.topbar{position: relative ;
  top: auto ;
  z-index: 10 ;}
header{position: sticky ;
  top: 0 ;            /* IMPORTANTISSIMO: niente var(--topbar-h) */
  z-index: 200 ;
  background: rgba(245,245,242,.92);
  backdrop-filter: blur(10px);}
body.admin-bar header{top: 32px ;}
@media (max-width: 782px){body.admin-bar header{top: 46px ;}}
.topbar{position: relative ;
  top: auto ;
  z-index: 5 ;}
header{position: -webkit-sticky ;
  position: sticky ;
  top: 0 ;
  z-index: 200 ;

  /* evita che si “veda sotto” mentre scrolli */
  background: rgba(245,245,242,.92) ;
  backdrop-filter: blur(10px);}
.navToggle{position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;}
.navToggle .navToggleBars{position: relative;
  width: 26px;
  height: 18px;
  display: block;}
.navToggle .navToggleBars::before,
.navToggle .navToggleBars::after{content:"";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
  border-radius: 999px;
  transition: transform .28s ease, top .28s ease, opacity .18s ease;}
.navToggle .navToggleBars::before{top: 4px;}
.navToggle .navToggleBars::after{top: 12px;}
.navToggle .navToggleBars{background: linear-gradient(currentColor,currentColor);
  background-size: 100% 2px;
  background-repeat: no-repeat;
  background-position: 0 50%;
  border-radius: 999px;
  transition: background-size .18s ease;}
html.olMenuOpen .navToggle .navToggleBars{background-size: 0 2px; /* sparisce la linea centrale */}
html.olMenuOpen .navToggle .navToggleBars::before{top: 8px;
  transform: rotate(45deg);}
html.olMenuOpen .navToggle .navToggleBars::after{top: 8px;
  transform: rotate(-45deg);}
@media (prefers-reduced-motion: reduce){.navToggle .navToggleBars,
  .navToggle .navToggleBars::before,
  .navToggle .navToggleBars::after{transition: none ;}}
@media (max-width: 980px){body[class*="template-tecniche"] .tecnichePage .layout{grid-template-columns: 1fr ;}
body[class*="template-tecniche"] .tecnichePage .index{position: relative ;
    top: auto ;
    padding: 0 ;}
body[class*="template-tecniche"] .tecnichePage .split{grid-template-columns: 1fr ;}}
@media (max-width: 560px){body[class*="template-tecniche"] .tecnichePage .iLink{flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 6px;}
body[class*="template-tecniche"] .tecnichePage .iLink small{padding-left: 18px;}}
html.olMenuOpen .topbar{opacity: 0;
  pointer-events: none;}
/* OsteoLux 1.1.0 — accessibility, consent-aware embeds and resilient UI */
:root{--ol-focus:#174f3c;--ol-focus-offset:3px;--ol-touch:44px;--ol-content:1180px;--ol-radius-sm:12px;--ol-radius-md:22px;--ol-radius-lg:34px;--ol-shadow-soft:0 14px 34px rgba(16,26,21,.10)}
html{scroll-behavior:smooth;overflow-x:clip}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-wrap:anywhere}
.serif,h1,h2,h3{font-family:Georgia,"Times New Roman",serif}
img,svg,video,iframe{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea,[tabindex]:not([tabindex="-1"]){-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid var(--ol-focus);outline-offset:var(--ol-focus-offset);box-shadow:0 0 0 3px rgba(255,255,255,.92)}
.skip-link{position:fixed;z-index:100000;top:8px;left:8px;padding:12px 16px;border-radius:10px;background:#fff;color:#102018;box-shadow:var(--ol-shadow-soft);transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.srOnly,.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.srOnly:focus,.screen-reader-text:focus{position:fixed;z-index:100000;top:8px;left:8px;width:auto;height:auto;margin:0;padding:12px;overflow:visible;clip:auto;white-space:normal;background:#fff}
[hidden]{display:none!important}
.btn,.olSearchBtn,.chip,button,.menuToggle,.drawerClose{min-height:var(--ol-touch)}
.btn,.chip,button{touch-action:manipulation}
.custom-logo{display:block;width:auto;max-height:64px}
html.ol-menu-open,html.ol-lightbox-open,body.ol-menu-open,body.ol-lightbox-open{overflow:hidden}
.olMapCard,.mapCard{overflow:hidden;border-radius:var(--ol-radius-md);background:#fff;box-shadow:var(--ol-shadow-soft)}
.olMapPlaceholder{display:grid;place-items:center;min-height:260px;padding:24px;text-align:center;background:linear-gradient(145deg,rgba(143,166,154,.18),rgba(255,255,255,.94))}
.olMapFrame{display:block;width:100%;min-height:360px;border:0}
.olMapActions,.sectionActions,.ctaActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.olWizard select,.olWizard textarea,.olWizard input{width:100%;min-height:48px;border:1px solid rgba(16,26,21,.24);border-radius:14px;padding:10px 12px;background:#fff;color:#102018}
.olWizard textarea{min-height:110px;resize:vertical}
.olFormError{margin-top:10px;color:#8b1f1f;font-weight:700}
.miniDisclaimer{font-size:max(.875rem,14px);line-height:1.55;color:rgba(16,26,21,.78)}
.lightbox[aria-hidden="false"]{display:flex}
.olGalleryThumb{appearance:none;width:100%;padding:0;border:0;background:transparent;text-align:inherit;cursor:pointer}
.olGalleryThumb img{display:block;width:100%}
.archiveList{list-style:none;margin:0;padding:0}.archiveList li+li{margin-top:8px}.archiveList a{display:flex;justify-content:space-between;gap:12px}
.searchResults{padding:24px 0 48px}
.osteopathy-side-image,.cv-course-image{display:block;width:100%;height:auto;border-radius:var(--ol-radius-lg)}
.mobileBar{padding-bottom:max(8px,env(safe-area-inset-bottom))}
@media (max-width:600px){.container{width:min(100% - 28px,var(--ol-content))}.btn{width:auto;max-width:100%;white-space:normal;text-align:center}.heroActions,.actionRow,.heroCtas,.ctaActions{align-items:stretch}.heroActions .btn,.actionRow .btn,.heroCtas .btn,.ctaActions .btn{flex:1 1 100%}.olMapFrame{min-height:300px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal,.revealA,.revealB,.revealS{opacity:1!important;transform:none!important}}
