/* Ahnatal: page-local styles using the shared Adam brand tokens. */
.ah-page main{color:var(--c-text);line-height:1.65}
.ah-container{max-width:var(--container);margin:auto;padding:0 28px}
:where(.ah-page main) h1{font-size:clamp(2rem,3.6vw,3.25rem)!important;line-height:1.16;max-width:1050px;margin:.8rem 0 1.8rem}
:where(.ah-page main) h2{font-size:clamp(1.55rem,2.5vw,2.1rem)!important;line-height:1.25;margin:0 0 1rem}
:where(.ah-page main) h3{font-size:1.2rem!important;line-height:1.3;margin:.5rem 0 .8rem}
.ah-page main p{margin:.6rem 0 1rem}
.ah-page main a{color:var(--primary-hover)}
.ah-page main a:hover{color:var(--c-text)}
.ah-page main :focus-visible{outline:3px solid var(--primary-hover);outline-offset:5px}
.ah-page main [id]{scroll-margin-top:calc(var(--header-h) + 24px)}
.ah-kicker{display:block;font-size:.73rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--primary-hover)}
.ah-text-link{font-weight:700;font-size:.9rem;text-decoration:none}
.ah-section{padding:3.75rem 0}
.ah-intro{max-width:780px;color:var(--c-text-soft)}
.ah-breadcrumb{background:var(--c-bg-alt);border-bottom:1px solid var(--c-border);font-size:.83rem}
.ah-breadcrumb .ah-container{display:flex;flex-wrap:wrap;gap:.6rem;padding-top:.8rem;padding-bottom:.8rem}
.ah-breadcrumb a{text-decoration:none}
.ah-hero{padding:2.5rem 0 0}
.ah-hero>.ah-container>.ah-kicker{animation:ah-up .32s both}
.ah-hero h1{animation:ah-up .36s .04s both}
.ah-hero-row{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:4rem;align-items:start;animation:ah-up .38s .08s both}
.ah-hero-row p{max-width:700px;font-size:1.05rem}
.ah-hero-row .ah-explain{font-size:.9rem;color:var(--c-text-soft)}
.ah-actions{padding-left:1.4rem;border-left:1px solid var(--c-border);display:grid;gap:.25rem}
.ah-actions>a{display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;font-weight:700;text-decoration:none;font-size:.9rem}
.ah-actions>a>span{margin-left:auto}
.ah-button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;text-decoration:none;font-weight:700;font-size:.9rem;padding:.85rem 1.2rem;border:2px solid var(--c-border);border-radius:var(--radius);transition:transform .18s,background .18s}
.ah-page main .ah-primary{background:var(--primary);border-color:var(--primary);color:var(--c-dark)}
.ah-page main .ah-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:var(--c-bg)}
.ah-button:hover{transform:translateY(-1px)}
.ah-index{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 0;border-top:1px solid var(--c-border);padding:1rem 0;margin-top:1.8rem}
.ah-index a{text-decoration:none;font-size:.82rem;font-weight:700;padding:.35rem .8rem}
.ah-index a:first-child{padding-left:0}
.ah-index a+a::before{content:'•';display:inline-block;margin-right:1.6rem;color:var(--c-muted)}
.ah-urgent{background:var(--primary-l);padding:1.4rem 0}
.ah-urgent-row{display:flex;align-items:center;gap:1.5rem}
.ah-urgent-row>i{font-size:1.7rem}
.ah-urgent-row>div{flex:1}
.ah-urgent h2{font-size:1.25rem!important;margin-bottom:.4rem!important}
.ah-urgent p{font-size:.92rem;margin:.3rem 0!important}
.ah-urgent small{display:block;font-size:.78rem;color:var(--c-text-soft);margin-top:.5rem}
.ah-urgent .ah-button{flex-shrink:0}
/* Alternating categories attached to one decorative spine; no chronology. */
.ah-axis{position:relative;margin:2.5rem 0 1rem}
.ah-spine{position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--c-border);transform-origin:top;pointer-events:none}
.ah-spine::after{content:'';position:absolute;inset:0;background:var(--primary);opacity:.7}
.ah-chapter{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0 0 2.2rem}
.ah-chapter:last-child{padding-bottom:0}
.ah-node{position:absolute;top:1.6rem;left:calc(50% - 6px);height:14px;width:14px;border:2px solid var(--primary-hover);background:var(--c-bg);border-radius:50%;z-index:1}
.ah-chapter-inner{position:relative;margin-right:3rem;padding:1.25rem 0 1.25rem 1.4rem;border-top:1px solid var(--c-border);background:var(--c-bg-alt)}
.ah-chapter-inner::before{content:'';position:absolute;top:1.6rem;right:-3rem;width:3rem;height:1px;background:var(--c-border)}
.ah-chapter:nth-of-type(even) .ah-chapter-inner{grid-column:2;margin:0 0 0 3rem;padding:1.25rem 1.4rem 1.25rem 0}
.ah-chapter:nth-of-type(even) .ah-chapter-inner::before{right:auto;left:-3rem}
.ah-chapter-mark{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}
.ah-chapter-mark>span{font-size:1.7rem;line-height:1;color:var(--primary-hover);font-weight:700}
.ah-chapter-mark i{font-size:1.5rem}
.ah-chapter h3{font-size:1.4rem!important;margin-bottom:.8rem}
.ah-chapter p{font-size:.94rem;color:var(--c-text-soft)}
.ah-chapter ul{padding-left:1.15rem;font-size:.88rem;margin:.7rem 0}
.ah-chapter li{padding:.15rem 0}
.ah-chapter .ah-scope{font-size:.82rem;padding-top:.65rem;border-top:1px solid var(--c-border)}
.ah-small{border-top:1px solid var(--c-border);padding:1rem 0;margin-top:2rem}
.ah-small h3{font-size:1.05rem!important}
.ah-small p{font-size:.9rem;color:var(--c-text-soft)}
.ah-pipe{display:flex;align-items:center;gap:1.25rem;border-top:1px solid var(--c-border);padding-top:1.3rem}
.ah-pipe>i{font-size:1.5rem}.ah-pipe>div{flex:1}
.ah-pipe h3{font-size:1.1rem!important;margin-bottom:.3rem!important}
.ah-pipe p{font-size:.85rem;margin:0!important}
.ah-area{background:var(--c-bg-alt)}
.ah-window{border:1px solid var(--c-border);border-top:2px solid var(--primary);background:var(--c-bg);margin:1.5rem 0}
.ah-municipality{display:block;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700;padding:1rem .5rem .4rem}
.ah-localities{display:grid;grid-template-columns:1fr 90px 1fr;align-items:center;padding:.5rem 1.5rem 1.3rem;gap:1rem}
.ah-localities>div{display:grid;grid-template-columns:26px auto;gap:0 .6rem;justify-content:center;align-items:center}
.ah-localities i{font-size:1.3rem;grid-row:span 2;color:var(--primary-hover)}
.ah-localities strong{font-size:1.25rem}.ah-localities small{font-size:.7rem;color:var(--c-text-soft)}
.ah-connector{height:1px;background:var(--c-border);position:relative}
.ah-connector::after{content:'';position:absolute;left:calc(50% - 3px);top:-3px;width:7px;height:7px;background:var(--primary);border-radius:50%}
.ah-map{position:relative;height:410px;z-index:0;background:var(--c-bg-alt);border-top:1px solid var(--c-border)}
.ah-map>p{padding:2rem;max-width:750px}
.ah-map .leaflet-tile{filter:none!important}
.ah-map-label{background:var(--c-bg);border:1px solid var(--c-border);box-shadow:var(--shadow-sm);color:var(--c-text);font-size:.8rem;font-weight:700;padding:.5rem .7rem}
.ah-map-error{position:absolute;bottom:28px;left:12px;right:12px;z-index:500;background:var(--c-bg);padding:.5rem;font-size:.8rem}
.ah-caption{font-size:.78rem;color:var(--c-text-soft)}
.ah-objects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;position:relative;padding-top:1.6rem;margin-top:1.8rem;border-top:1px solid var(--c-border)}
.ah-objects>div{position:relative}
.ah-objects>div::before{content:'';position:absolute;top:-1.85rem;left:0;width:9px;height:9px;border:2px solid var(--primary-hover);background:var(--c-bg);border-radius:50%}
.ah-objects i{font-size:1.5rem}.ah-objects h3{text-transform:uppercase;font-size:1rem!important}
.ah-objects p{font-size:.9rem;color:var(--c-text-soft)}
.ah-objects small{display:block;font-size:.74rem;color:var(--c-text-soft)}
.ah-execution{background:var(--c-bg-alt);border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.ah-transparency{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:1.5rem 0}
.ah-transparency>div{padding-top:1rem;border-top:2px solid var(--c-border)}
.ah-transparency i{font-size:1.35rem}.ah-transparency h3{font-size:1.05rem!important}
.ah-transparency p{font-size:.9rem;color:var(--c-text-soft)}
.ah-spectrum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:1.5rem 0;border-top:2px solid var(--primary);border-bottom:1px solid var(--c-border)}
.ah-spectrum>div{padding:1.25rem 1rem}.ah-spectrum>div+div{border-left:1px solid var(--c-border)}
.ah-spectrum>div:nth-child(even){background:var(--c-bg-alt)}
.ah-spectrum i{font-size:1.3rem}.ah-spectrum h3{font-size:.82rem!important;text-transform:uppercase;min-height:2.2rem}
.ah-spectrum p{font-size:.85rem;color:var(--c-text-soft);margin:0!important}
.ah-contact{background:var(--c-bg-alt);padding:2.5rem 0}
.ah-contact>.ah-container>p{max-width:870px}
.ah-fold{display:grid;grid-template-columns:1.2fr .9fr 1fr;border-top:2px solid var(--primary);border-bottom:1px solid var(--c-border);margin-top:1.5rem;background:var(--c-bg)}
.ah-fold>a{display:grid;grid-template-columns:32px minmax(0,1fr);gap:.3rem 1rem;align-items:center;padding:1.4rem 1.2rem;text-decoration:none;position:relative}
.ah-fold>a+a{border-left:1px solid var(--c-border)}
.ah-fold>a:first-child{background:var(--primary-l)}
.ah-fold i{grid-row:span 2;font-size:1.5rem;transition:transform .18s}
.ah-fold>a>span{font-size:.72rem;text-transform:uppercase;font-weight:700;color:var(--c-text)}
.ah-fold strong{font-size:1rem}.ah-fold a:hover i,.ah-fold a:focus-visible i{transform:translateY(-1px)}
.ah-safety{padding:1.5rem 0;border-bottom:1px solid var(--c-border)}
.ah-safety h2{font-size:1.15rem!important}.ah-safety li{font-size:.88rem;padding:.2rem 0}
.ah-faq{border-bottom:1px solid var(--c-border);padding:1.1rem 0}
.ah-faq summary{font-weight:700;cursor:pointer}.ah-faq p{max-width:900px;padding-top:.6rem;color:var(--c-text-soft)}
.ah-final{padding:2.5rem 0;background:var(--c-bg-alt);border-top:3px solid var(--primary)}
.ah-final p{max-width:860px}.ah-final>.ah-container>div{display:flex;flex-wrap:wrap;gap:.75rem}
/* Enhancement animates visible content once; no hidden default state. */
@keyframes ah-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ah-draw{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes ah-node{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes ah-left{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
@keyframes ah-right{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.ah-axis.ah-revealed .ah-spine{animation:ah-draw .78s ease-out both}
.ah-chapter.ah-revealed .ah-node{animation:ah-node .26s ease-out both}
.ah-chapter.ah-revealed .ah-chapter-inner{animation:ah-left .34s ease-out both}
.ah-chapter:nth-of-type(even).ah-revealed .ah-chapter-inner{animation-name:ah-right}
.ah-reveal.ah-revealed{animation:ah-up .34s ease-out both}
.ah-window.ah-revealed .ah-localities>div:first-child{animation:ah-left .32s ease-out both}
.ah-window.ah-revealed .ah-localities>div:last-child{animation:ah-right .32s ease-out both}
@media(max-width:900px){
 .ah-hero-row{gap:2rem}.ah-chapter-inner{margin-right:2rem;padding-left:1rem}
 .ah-chapter:nth-of-type(even) .ah-chapter-inner{margin-left:2rem;padding-right:1rem}
 .ah-chapter-inner::before{right:-2rem;width:2rem}.ah-chapter:nth-of-type(even) .ah-chapter-inner::before{left:-2rem}
 .ah-fold>a{padding:1rem .8rem;gap:.3rem .6rem}.ah-fold strong{font-size:.9rem}
}
@media(max-width:700px){
 .ah-container{padding:0 18px}.ah-section{padding:2.5rem 0}.ah-hero{padding:2rem 0 0}
 .ah-hero-row{grid-template-columns:1fr;gap:.8rem}.ah-actions{padding-left:0;border-left:0;border-top:1px solid var(--c-border);padding-top:1rem}
 .ah-index{gap:.15rem 0;margin-top:1rem}.ah-index a{padding:.3rem .5rem;font-size:.75rem}.ah-index a+a::before{margin-right:1rem}
 .ah-urgent-row{flex-wrap:wrap;gap:1rem}.ah-urgent-row>div{min-width:0}.ah-urgent .ah-button{width:100%}
 .ah-spine{left:7px}.ah-node{left:1px;top:1.6rem}.ah-axis{margin-top:2rem}
 .ah-chapter{display:block;padding:0 0 1.6rem 30px}
 .ah-chapter-inner,.ah-chapter:nth-of-type(even) .ah-chapter-inner{margin:0;padding:1rem;background:var(--c-bg-alt)}
 .ah-chapter-inner::before,.ah-chapter:nth-of-type(even) .ah-chapter-inner::before{left:-23px;right:auto;width:23px}
 .ah-chapter h3{font-size:1.2rem!important}.ah-chapter-mark>span{font-size:1.45rem}.ah-chapter-mark i{font-size:1.3rem}
 .ah-chapter.ah-revealed .ah-chapter-inner,.ah-chapter:nth-of-type(even).ah-revealed .ah-chapter-inner{animation-name:ah-up}
 .ah-pipe{flex-wrap:wrap;gap:.75rem}.ah-pipe>div{min-width:0}.ah-pipe>a{width:100%}
 .ah-localities{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);padding:.6rem .6rem 1rem;gap:.3rem}
 .ah-localities>div{grid-template-columns:1fr;justify-items:center;gap:.2rem;text-align:center}.ah-localities i{grid-row:auto}
 .ah-localities strong{font-size:1rem}.ah-map{height:350px}
 .ah-objects{grid-template-columns:1fr;gap:1.4rem;border-top:0;border-left:1px solid var(--c-border);padding:0 0 0 1.5rem;margin-left:4px}
 .ah-objects>div::before{top:.5rem;left:-1.8rem}.ah-objects>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:0 .7rem}
 .ah-objects i{grid-row:span 3}.ah-objects p,.ah-objects small{grid-column:2}.ah-objects h3{margin:.3rem 0!important}
 .ah-transparency{grid-template-columns:1fr;gap:.8rem}.ah-spectrum{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ah-spectrum h3{overflow-wrap:anywhere}
 .ah-spectrum>div+div{border-left:0}.ah-spectrum>div:nth-child(even){border-left:1px solid var(--c-border)}
 .ah-spectrum>div:nth-child(-n+2){border-bottom:1px solid var(--c-border)}.ah-spectrum>div{padding:1rem .7rem}
 .ah-fold{grid-template-columns:1fr}.ah-fold>a{padding:1.1rem}.ah-fold>a+a{border-left:0;border-top:1px solid var(--c-border)}
 .ah-final .ah-button{flex:1 1 145px}
}
@media(prefers-reduced-motion:reduce){
 html:has(.ah-page){scroll-behavior:auto}
 .ah-page main *,.ah-page main *::before,.ah-page main *::after{animation:none!important;transition:none!important}
 .ah-button:hover,.ah-fold a:hover i,.ah-fold a:focus-visible i{transform:none}
}
