/* LIVORAI Nature: shared, lightweight tourism identity. */
:root{--nature-green:#185e20;--nature-deep:#0d3b1f;--nature-paper:#fff3d9;--nature-ink:#203423;--nature-muted:#536046;--nature-gold:#91651c;--background:#dec092;--foreground:#203423;--card:#fff3d9;--card-foreground:#203423;--popover:#fff3d9;--popover-foreground:#203423;--primary:#185e20;--primary-foreground:#fff4d4;--secondary:#ecdfbf;--secondary-foreground:#203423;--muted:#eee1c2;--muted-foreground:#536046;--accent:#e5dfbd;--accent-foreground:#203423;--border:#98a06b;--input:#788451;--ring:#185e20;--gold:#91651c;--ink:#dec092;color-scheme:light}
body{background:#dec092 url('/images/cork-texture.webp') repeat;background-size:420px;color:var(--nature-ink)}
body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:rgba(255,242,210,.22)}
h1,h2,h3,h4{color:var(--nature-deep)}a:hover{color:#185e20}
.masthead{position:relative;background:transparent;backdrop-filter:none;border-bottom:1px solid #8a713c;max-width:1440px;margin:auto;padding:24px 4%;gap:22px}
.brand{color:var(--nature-deep);font-family:Georgia,serif;font-size:35px}.brand span{color:#93691d}.brand small{color:var(--nature-deep)}
.languages button,.language-picker a{color:var(--nature-deep);background:#fff3d97a;border:1px solid #9a895a;border-radius:8px;min-height:44px}
.languages button[aria-pressed=true],.language-picker a[aria-current=true]{background:var(--nature-deep);color:#fff3d9;border-color:var(--nature-deep)}
.quick,.atlas-mobile-nav,.page-journey{border-color:#8b7849;gap:12px}
.quick{max-width:1360px;margin:18px auto;padding:0 3%;justify-content:center}
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.mother-actions>.button,.hero-actions>.btn){
background:linear-gradient(160deg,#408443 0%,#185e20 36%,#0d3b1f 78%,#245227 100%)!important;
color:#fff4d4!important;border:1px solid #a3a963!important;border-radius:30px 5px 30px 5px!important;
box-shadow:inset 0 2px 2px #d0df9366,inset 0 -3px 4px #052a1899,0 4px 6px #45381740;
min-height:46px;padding:12px 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;line-height:1.35;text-align:center;font-weight:600;font-size:14px;white-space:normal;max-width:100%;text-decoration:none;transition:filter .18s,transform .18s
}
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.sw-actions>a,.sw-journey>a,.quick-nav>a):hover{filter:brightness(1.12);transform:translateY(-1px)}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #185e20;outline-offset:4px}
button:disabled{opacity:.5;cursor:not-allowed}
.hero,.premium-hero{max-width:1360px;margin:20px auto 32px;width:94%;border:2px solid #4d7033;border-radius:20px;box-shadow:0 3px 0 #184022,0 10px 24px #493b3040;min-height:480px;height:auto;overflow:hidden}
.hero-content{padding:65px 5%;max-width:920px}.hero h1{font-size:clamp(3.5rem,7vw,6.8rem)}
.hero :is(h1,h2,h3),.premium-hero :is(h1,h2,h3){color:#fff8e8}
.hero em,.premium-hero em,.hero .eyebrow,.premium-hero .eyebrow{color:#f2d580}
.hero-caption,.premium-photo-credit{color:#fff4df;background:#0d291ddd;border-radius:8px;padding:7px 12px;font-size:12px}
.hero:after{background:linear-gradient(90deg,#061b13d9,#061b1377 52%,#061b1308),linear-gradient(0deg,#061b1366,transparent 40%)}
.section{max-width:1360px;padding:54px 4%}.section+.section{padding-top:25px}
:is(.discovery,.atlas-place,.premium-card,.festival-card,.agenda-item,.traveller-card,.moment,.feed-card,.sign-card,.contribution-form,.review-card,.atlas-route,.guide,.tourism-collaboration,.upcoming-card,.douro-topic,.douro-route,.douro-area-card,.douro-establishment,.sw-card,.sw-post,.sw-gateways article,.story,.destination,.agenda-card){
background:var(--nature-paper)!important;color:var(--nature-ink);border:2px solid #698342!important;border-radius:16px;box-shadow:inset 0 0 0 1px #f3dfaa,0 3px 0 #375a2b,0 7px 14px #4a392229;overflow:hidden
}
:is(.discovery,.atlas-place,.premium-card,.festival-card,.agenda-item,.traveller-card,.moment,.feed-card,.guide,.community,.profile-columns,.atlas-route,.douro-area-card,.sw-card,.sw-post,.sw-gateways,.story,.destination,.agenda-card) p{color:var(--nature-ink)!important}
:is(.muted,.note,.credit,.source-note,.tag,.eyebrow,.feed-meta,.feed-card p,.facts span,.profile-facts dt,.profile-top figcaption,.premium-index span,.moment-author time,.moment-author div>span,.moment-kind,.moment figcaption,.moment-links a,.community-page small,.premium-card .note){color:var(--nature-muted)!important}
.hero .eyebrow,.premium-hero .eyebrow{color:#f2d580!important}
.text-link,summary,.moment summary,.moment-collaboration>summary{color:var(--nature-deep)}
:is(.discovery,.atlas-place,.traveller-card) img{display:block;aspect-ratio:1.5;width:100%;object-fit:cover;min-height:220px;border-bottom:2px solid #718343}
.card-content{padding:22px}.card-content h3{font-size:2rem}.card-content p{font-size:16px}
.feed-card{padding:0;gap:24px}.feed-card>div{padding:24px}.feed-card>img{height:100%;min-height:280px;object-fit:cover}
:is(.moments-page,.atlas-main,.sw-feed){background:transparent!important;color:var(--nature-ink)}
:is(.moments-intro p,.profile-columns p,.community-page p){color:var(--nature-ink)}
:is(.trip-access,.travel-access,.travel-partner,.sw-travel){background:#efe4c9!important;color:var(--nature-ink)!important;border:1px solid #829354!important;border-radius:12px;box-shadow:inset 0 1px 0 #fff8e5}
.trip-access{padding:14px!important}.trip-access h3{color:var(--nature-deep)!important}.trip-access .note{color:#536046!important}
.trip-buttons{gap:8px}.trip-buttons>a{padding:9px 15px;font-size:14px;min-height:44px}
.page-journey :is(small,strong){color:#fff4d4}
:is(.profile-columns aside,.map-sidebar,.filter-details,.moment-invite,.moment-business,.moment-upcoming,.atlas-empty,.sw-collab,.sw-notice,.sw-share){background:#f8ecd1!important;color:var(--nature-ink);border-color:#8b955a;border-radius:14px}
.map-sidebar button{color:var(--nature-deep);border-color:#b7b68c}.map-sidebar small{color:#536046}.map-empty{background:linear-gradient(125deg,#345c40,#123c2e)}.map-empty p{color:#fff3d9}.map-layout{border:2px solid #698342;border-radius:16px;overflow:hidden}
input:not([type=checkbox]):not([type=radio]),select,textarea{background:#fff9eb!important;color:#203423!important;border:1px solid #89915f!important;border-radius:9px!important;font:inherit!important;min-height:46px}
input::placeholder,textarea::placeholder{color:#65715c}label,legend{color:#203423}
.alphabet button,.pagination button{background:#fff4d9;color:#203423;border:1px solid #788b50;border-radius:8px;min-height:44px}
.alphabet button[aria-pressed=true]{background:#185e20;color:#fff4d4}
footer{background:#e9d3aa80;color:#34462c;border-color:#8b7849}footer a{color:#244629}
.profile-status{color:#34462c;background:#e1dfb9}.moment-author{background:#f2e5c9}.mino-mark{color:#315528}
.hero-content>p:not(.eyebrow),.premium-hero p:not(.eyebrow){color:#fff8e8!important}
@media(max-width:800px){
 .masthead{flex-wrap:wrap;justify-content:center;padding:18px 16px}.masthead .brand{font-size:31px;text-align:center}.languages{justify-content:center;flex-wrap:wrap}.masthead nav{display:flex;flex-wrap:wrap;justify-content:center;width:100%;gap:16px}
 .hero,.premium-hero{width:calc(100% - 24px);min-height:500px}.hero-content{padding:48px 23px 85px}.hero h1{font-size:clamp(3rem,12vw,4.5rem)}.hero h1 em{font-size:.52em}.hero-caption{bottom:14px;right:12px;max-width:calc(100% - 24px)}
 .quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px;gap:10px}.quick>a{font-size:14px;padding:12px 14px;min-height:54px;width:100%}
 .section{padding:38px 16px}.cards{gap:20px}.feed-card{grid-template-columns:1fr}.feed-card>img{height:auto;min-height:0}.feed-card>div{padding:20px}.atlas-mobile-nav{padding:16px;gap:9px}.atlas-mobile-nav>a{flex:1 1 120px}
 .page-journey>a{width:100%}.card-actions{gap:12px}.premium-hero>div{padding:45px 22px 80px}.premium-hero h1{font-size:clamp(2.8rem,12vw,4.4rem)}
 .trip-buttons{display:flex;flex-wrap:wrap}.trip-buttons>a{flex:1 1 140px}.tourism-collaboration{padding:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button{transition:none!important;transform:none!important}}
/* Collection surfaces and image-overlay exceptions */
:is(.douro-card,.douro-place,.douro-story,.douro-universe,.douro-category,.douro-navigation,.municipal-official,.moment-business,.partner-cards>article){background:var(--nature-paper)!important;color:var(--nature-ink);border:2px solid #698342;border-radius:16px;box-shadow:0 3px 0 #375a2b,0 6px 12px #4a392222}
:is(.douro-card,.douro-place,.douro-story,.douro-universe,.douro-category,.municipal-official) :is(p,small,li,span){color:var(--nature-ink)}
:is(.atlas-door,.douro-gateway){border:2px solid #718b42;border-radius:18px;overflow:hidden}
:is(.atlas-door,.douro-gateway) :is(h2,h3,p,.eyebrow){color:#fff4d9!important}
.douro-photo figcaption{color:#536046}.douro-photo img{border-radius:14px}
:is(.quick>a,.gold-button,.button,.quick-nav>a){border-radius:48px 4px 48px 4px!important}
.nature-icon{width:19px;height:19px;flex-shrink:0;color:#f4dda0;stroke-width:1.8}
@media(max-width:600px){.quick{gap:8px}.quick>a{min-height:54px}.nature-icon{width:17px;height:17px}.douro-navigation{padding:14px}.douro-card,.douro-story{padding:22px}}

@media(max-width:800px){main:has(>.quick){display:flex;flex-direction:column}main:has(>.quick)>.hero{order:-1}.quick{width:100%;box-sizing:border-box}}

/* Botanical silhouette, central vein and cast shadow; text remains live. */
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.card-actions>a,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.masthead nav>a,.sw-header nav:not(.language-picker)>a,header nav[aria-label="Navigation principale"]>a){position:relative;isolation:isolate;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#fff4d4!important;min-height:68px;padding:20px 34px!important;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-align:center;line-height:1.3;font-size:14px;white-space:normal;max-width:100%;text-decoration:none;overflow:visible;box-sizing:border-box}
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.card-actions>a,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.masthead nav>a,.sw-header nav:not(.language-picker)>a,header nav[aria-label="Navigation principale"]>a)::before{content:"";position:absolute;inset:0;z-index:-1;background:url('/images/leaf-button.svg') center/100% 100% no-repeat;filter:drop-shadow(0 5px 3px #19331766);pointer-events:none}
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.card-actions>a,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.masthead nav>a,.sw-header nav:not(.language-picker)>a,header nav[aria-label="Navigation principale"]>a):hover{color:#fff9e7!important;filter:brightness(1.12);transform:translateY(-2px)}
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.card-actions>a,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.masthead nav>a,.sw-header nav:not(.language-picker)>a,header nav[aria-label="Navigation principale"]>a):active{transform:translateY(1px)}
:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.card-actions>a,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.masthead nav>a,.sw-header nav:not(.language-picker)>a,header nav[aria-label="Navigation principale"]>a):focus-visible{outline:3px solid #917021;outline-offset:4px;border-radius:50% 2% 50% 2%!important}
.quick,.quick-nav,.trip-buttons,.sw-actions{gap:12px}.nature-icon{color:#f4dda0}.masthead nav,.sw-header nav{gap:8px!important}.masthead nav>a,.sw-header nav:not(.language-picker)>a{font-size:13px;min-height:60px;padding:18px 27px!important}
@media(max-width:800px){:is(.gold-button,.button,.quick>a,.atlas-mobile-nav>a,.page-journey>a,.trip-buttons>a,.card-actions>button,.card-actions>a,.profile-tags>a,.discovery-links>a,.premium-theme-nav>a,.premium-theme-nav>button,.guide-controls>button,.sw-actions>a,.sw-journey>a,.quick-nav>a,.masthead nav>a,.sw-header nav:not(.language-picker)>a,header nav[aria-label="Navigation principale"]>a){min-height:68px;padding:20px 27px!important;font-size:14px}.quick>a,.quick-nav>a{min-height:78px}.masthead nav>a,.sw-header nav:not(.language-picker)>a{min-height:60px;font-size:12px;padding:17px 23px!important}.trip-buttons>a{flex:1 1 180px}.quick,.quick-nav{gap:10px}.sw-header nav:not(.language-picker){display:flex;flex-wrap:wrap}}
