/* TikAp France - isolated THERATEX editorial directory */
.tas-app{--tas-accent:#12645c;--tas-deep:#123b37;--tas-surface:#f5f8f6;--tas-ink:#1e3432;--tas-muted:#647774;--tas-line:#dfebe6;--tas-white:#fff;max-width:1190px;margin:0 auto;color:var(--tas-ink);font-family:inherit;font-size:16px;line-height:1.6}
.tas-app *, .tas-app *:before,.tas-app *:after{box-sizing:border-box}
.tas-app a{text-decoration:none;color:inherit}
.tas-app a:focus-visible{outline:3px solid #53bba5;outline-offset:3px}
.tas-app h1,.tas-app h2,.tas-app h3,.tas-app p{margin-top:0}
.tas-app h1,.tas-app h2,.tas-app h3{color:var(--tas-ink);letter-spacing:-.025em;line-height:1.17}
.tas-app h1{font-size:clamp(2.15rem,5vw,3.55rem);font-weight:750;max-width:820px;margin-bottom:19px}
.tas-app h2{font-size:clamp(1.65rem,2.4vw,2.15rem);font-weight:740;margin:4px 0 0}
.tas-app h3{font-size:1.17rem;line-height:1.38;font-weight:700}
.tas-app .tas-kicker,.tas-app .tas-eyebrow{display:block;font-size:.75rem;line-height:1.4;letter-spacing:.14em;font-weight:750;color:var(--tas-accent);text-transform:uppercase}
.tas-app .tas-kicker{color:#bee9dd;margin-bottom:18px}
.tas-app .tas-hero{background:linear-gradient(125deg,#173e38 0%,#0b2729 75%,#124337 100%);color:#f4faf7;padding:clamp(30px,5.5vw,76px);border-radius:22px;position:relative;overflow:hidden;isolation:isolate;margin:18px 0 42px}
.tas-app .tas-hero:before{content:"";position:absolute;right:-65px;top:-140px;width:380px;height:380px;z-index:-1;border-radius:50%;border:1px solid rgba(186,238,220,.22);box-shadow:0 0 0 55px rgba(167,234,209,.035),0 0 0 115px rgba(167,234,209,.025)}
.tas-app .tas-hero h1{color:#fff}.tas-app .tas-hero p{max-width:710px;color:#d6e5df;font-size:1.07rem;line-height:1.75;margin-bottom:26px}
.tas-app .tas-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.tas-app .tas-button{border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:14px 19px;border:1px solid transparent;font-weight:700;font-size:.93rem;text-align:center;line-height:1.3;transition:background .16s ease,transform .16s ease;color:inherit}
.tas-app .tas-button:hover{transform:translateY(-2px)}
.tas-app .tas-button-soft{background:#d7f4e7;color:#153b33}
.tas-app .tas-button-outline{background:transparent;border-color:rgba(226,246,236,.55);color:#f8fffb}
.tas-app .tas-button-accent{background:#c9f3df;color:#164137;flex-shrink:0}
.tas-app .tas-button-accent:hover,.tas-app .tas-button-soft:hover{background:#a6ead0;color:#103b32}
.tas-app .tas-section{margin:0 0 52px;scroll-margin-top:60px}
.tas-app .tas-section-header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:22px}
.tas-app .tas-section-header>p{max-width:310px;text-align:right;font-size:.9rem;color:var(--tas-muted);margin:0}
.tas-app .tas-city-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
.tas-app .tas-city-card{min-height:138px;border:1px solid var(--tas-line);background:#fff;border-radius:15px;display:flex;flex-direction:column;justify-content:space-between;padding:17px 17px 15px;position:relative;box-shadow:0 5px 22px rgba(15,57,47,.025);transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease}
.tas-app .tas-city-card:hover{border-color:#74baa5;box-shadow:0 10px 26px rgba(14,71,56,.10);transform:translateY(-3px)}
.tas-app .tas-pin{color:var(--tas-accent);font-size:.82rem}
.tas-app .tas-city-name{font-size:1.25rem;font-weight:750;line-height:1.3}
.tas-app .tas-city-action{position:absolute;top:12px;right:16px;color:var(--tas-accent);font-size:1.2rem}
.tas-app .tas-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.tas-app .tas-topic-card{position:relative;border:1px solid var(--tas-line);border-radius:13px;background:var(--tas-surface);padding:19px 20px 16px;min-height:100px;display:flex;flex-direction:column;align-items:start;gap:6px;transition:border-color .15s ease,background .15s ease}
.tas-app .tas-topic-card:hover{background:#eaf6ee;border-color:#89c7b3}
.tas-app .tas-topic-label{font-weight:730;font-size:1rem;padding-right:15px}
.tas-app .tas-topic-count{color:var(--tas-muted);font-size:.81rem}
.tas-app .tas-topic-arrow{position:absolute;top:17px;right:18px;color:var(--tas-accent);font-size:1.15rem}
.tas-app .tas-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tas-app .tas-post-card{border:1px solid var(--tas-line);border-radius:16px;background:#fff;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 5px 23px rgba(28,76,60,.035)}
.tas-app .tas-post-image-link{display:block;background:var(--tas-surface);height:185px;overflow:hidden}
.tas-app img.tas-post-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .18s ease}
.tas-app .tas-post-card:hover .tas-post-image{transform:scale(1.035)}
.tas-app .tas-post-placeholder{display:flex;height:100%;align-items:center;justify-content:center;background:radial-gradient(circle at 28% 20%,#d5eddf 0,transparent 50%),linear-gradient(140deg,#e3f0eb,#cfdfd7);color:#487b70;font-size:1.15rem;letter-spacing:.22em;font-weight:760}
.tas-app .tas-post-body{padding:21px 21px 20px;display:flex;flex-direction:column;flex:1}
.tas-app .tas-post-category{color:var(--tas-accent);text-transform:uppercase;letter-spacing:.085em;font-size:.71rem;font-weight:800;margin-bottom:10px}
.tas-app .tas-post-body h3{margin:0 0 11px}
.tas-app .tas-post-body h3 a:hover{color:var(--tas-accent)}
.tas-app .tas-post-body p{font-size:.9rem;color:#667773;line-height:1.65;margin:0 0 18px;flex:1}
.tas-app .tas-post-footer{padding-top:13px;border-top:1px solid var(--tas-line);display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;font-size:.78rem}
.tas-app .tas-post-footer time{color:var(--tas-muted)}
.tas-app .tas-post-footer a{color:var(--tas-accent);font-weight:750}
.tas-app .tas-reco-cta{background:linear-gradient(120deg,#143e3c,#105149);color:white;border-radius:19px;padding:clamp(23px,4vw,43px);margin:35px 0}
.tas-app .tas-cta-overline{font-size:.7rem;font-weight:750;letter-spacing:.17em;color:#b5e9d8;margin-bottom:10px}
.tas-app .tas-cta-main{display:flex;align-items:center;justify-content:space-between;gap:26px}
.tas-app .tas-cta-main>div{max-width:630px}
.tas-app .tas-cta-main h2{color:white;font-size:clamp(1.35rem,2.4vw,1.95rem);margin-bottom:9px}
.tas-app .tas-cta-main p{color:#d9e9e4;font-size:.94rem;line-height:1.65;margin:0}
.tas-app .tas-muted{color:var(--tas-muted)}
.tas-app .tas-empty{padding:28px;border-radius:12px;border:1px dashed #b6cfc4;color:var(--tas-muted);background:var(--tas-surface)}
.tas-app .tas-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:11px;font-size:.82rem;color:#697c76;margin:12px 0 15px}
.tas-app .tas-breadcrumb a:hover,.tas-app .tas-back a:hover{color:var(--tas-accent)}
.tas-app .tas-hero.tas-city-hero{display:flex;justify-content:space-between;align-items:center;gap:35px}
.tas-app .tas-city-hero-image{width:35%;flex-shrink:0;align-self:stretch;min-height:200px}
.tas-app .tas-city-hero-image img{width:100%;height:100%;max-height:360px;object-fit:cover;border-radius:13px;display:block}
.tas-app .tas-city-editorial{border-left:3px solid #a3d6c2;padding:2px 0 2px 22px;color:#425a53;font-size:1rem;max-width:950px}
.tas-app .tas-city-editorial p:last-child{margin-bottom:0}
.tas-app .tas-city-editorial a{text-decoration:underline;text-underline-offset:3px;color:var(--tas-accent)}
.tas-app .tas-city-editorial h2,.tas-app .tas-city-editorial h3{font-size:1.25rem;margin:16px 0 12px}
.tas-app .tas-filter-nav{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 24px}
.tas-app .tas-filter{border:1px solid var(--tas-line);border-radius:40px;padding:8px 15px;font-size:.83rem;font-weight:650;background:#fff}
.tas-app .tas-filter:hover,.tas-app .tas-filter.tas-is-active{border-color:var(--tas-accent);background:var(--tas-accent);color:#fff}
.tas-app .tas-pages{margin:26px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}
.tas-app .tas-pages .page-numbers{padding:8px 13px;border:1px solid var(--tas-line);border-radius:9px;min-width:37px;text-align:center}
.tas-app .tas-pages .current,.tas-app .tas-pages a:hover{background:var(--tas-accent);border-color:var(--tas-accent);color:#fff}
.tas-app .tas-disclaimer{font-size:.82rem;color:var(--tas-muted);margin-top:23px}
.tas-app .tas-back{margin:27px 0 50px;color:var(--tas-accent);font-size:.9rem;font-weight:750}
.tas-app.tas-outer{padding-left:20px;padding-right:20px}
/* A shortcode alone is not wrapped in .tas-app, so its CTA remains styled. */
.tas-reco-cta{font-family:inherit}
@media(max-width:980px){.tas-app .tas-city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tas-app .tas-post-grid,.tas-app .tas-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tas-app .tas-cta-main{flex-direction:column;align-items:start}}
@media(max-width:620px){.tas-app{font-size:15px}.tas-app .tas-city-grid,.tas-app .tas-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tas-app .tas-post-grid{grid-template-columns:1fr}.tas-app .tas-city-card{min-height:108px}.tas-app .tas-hero{padding:29px 23px;margin-bottom:31px;border-radius:17px}.tas-app .tas-section{margin-bottom:35px}.tas-app .tas-section-header{align-items:start;flex-direction:column;gap:8px}.tas-app .tas-section-header>p{text-align:left}.tas-app .tas-hero.tas-city-hero{flex-direction:column;align-items:stretch}.tas-app .tas-city-hero-image{width:100%;height:180px}.tas-app .tas-cta-main .tas-button{width:100%}.tas-app .tas-hero-actions .tas-button{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.tas-app *{transition:none!important;scroll-behavior:auto!important}}
