/* Shared type scale for the established 1.6 design. */
:root{--type-body:16px;--type-note:14px;--type-label:12px;--type-h1:40px;--type-h2:32px;--type-h3:22px}
body{font-size:var(--type-body);line-height:1.8}
h1,.generic-content h1,.tour-page-heading h1,.legal-page h1{font-size:var(--type-h1);line-height:1.2;letter-spacing:-1px}
h2,.about-copy h2,.faq-section h2,.steps-section h2,.contact-copy h2{font-size:var(--type-h2);line-height:1.3;letter-spacing:-.6px}
h3,.steps-grid h3{font-size:var(--type-h3);line-height:1.4;letter-spacing:-.3px}
.hero h1{font-size:clamp(40px,4.4vw,60px);line-height:1.12;letter-spacing:-1.8px}
.hero-intro{font-size:17px;line-height:1.8}
.eyebrow,.hero .eyebrow{font-size:var(--type-label);line-height:1.7;letter-spacing:1.5px}
.main-nav a,.header-cta,.header-phone{font-size:14px}
.main-nav{gap:16px}
.button,.hero .button,.trip-finder>.button{font-size:14px;min-height:48px;line-height:1.5}
.hero-location{font-size:14px}.hero-location small{font-size:12px;line-height:1.7}
.finder-title{font-size:16px;line-height:1.5}.field-label{font-size:12px;line-height:1.6;letter-spacing:1px}
.select-field select{font-size:16px;line-height:1.5}
.trust-strip>span{font-size:13px;line-height:1.7}
.section-intro,.about-copy>p:not(.eyebrow),.faq-section>div>p:not(.eyebrow){font-size:16px;line-height:1.8}
.filter{font-size:14px;line-height:1.5}.result-count{font-size:13px;line-height:1.7}
.tour-card{display:flex;flex-direction:column;min-width:0}
.tour-card h3{font-size:24px;line-height:1.35;letter-spacing:-.5px}
.tour-date,.tour-route{font-size:14px;line-height:1.7}
.tour-route{min-height:0}.tour-card-bottom{margin-top:auto}
.tour-tag{font-size:12px;line-height:1.5}
.tour-price{font-size:26px;line-height:1.4}.tour-price small{font-size:14px;line-height:1.5}.tour-price.inquiry{font-size:18px}
.tour-bottom p,.calendar-note{font-size:14px;line-height:1.8}
.about-services span{font-size:14px;line-height:1.6}
.calendar-date strong{font-size:16px;line-height:1.6}.calendar-date small{font-size:13px;line-height:1.7}
.calendar-name{font-size:20px;line-height:1.5}.calendar-name small{font-size:14px;line-height:1.7}.calendar-price{font-size:22px;line-height:1.5}
.steps-grid p,.faq-list details p{font-size:16px;line-height:1.8}
.faq-list summary{font-size:18px;line-height:1.6}
.contact-copy>p:not(.eyebrow){font-size:16px;line-height:1.8}
.contact-phone{font-size:28px;line-height:1.5}.contact-email{font-size:18px;line-height:1.7}
.working-hours,.working-hours>span:last-child,.contact-social p{font-size:14px;line-height:1.8}
.contact-form h3{font-size:22px;line-height:1.4}
.contact-form label{font-size:14px;line-height:1.7}
.contact-form input,.contact-form select,.contact-form textarea{font-family:var(--font);font-size:16px;line-height:1.6}
.form-note,.contact-hint,.contact-form .consent-label,.contact-form .consent-label .privacy-button{font-size:13px;line-height:1.8}
.form-status{font-size:14px;line-height:1.8}
.newsletter-section h2{font-size:32px;line-height:1.3}
.newsletter-section p:not(.eyebrow){font-size:16px;line-height:1.8}
.newsletter-section .form-note{font-size:13px}
.newsletter-section .mailpoet_form input,.newsletter-section .mailpoet_form button{font-family:var(--font)!important;font-size:16px!important}
.footer-main>span,.footer-main>a:not(.brand){font-size:14px;line-height:1.7}
.footer-bottom{font-size:12px;line-height:1.8;flex-wrap:wrap}.footer-bottom .privacy-button{font-size:12px}
.dialog-body h2{font-size:32px;line-height:1.25;letter-spacing:-.7px}
.dialog-meta{font-size:14px;line-height:1.7}.dialog-summary,.dialog-columns li,.dialog-columns p{font-size:16px;line-height:1.8}
.dialog-columns h3{font-size:20px;line-height:1.4}.dialog-footnote{font-size:13px;line-height:1.8}
.dialog-bottom .button{font-size:14px;min-height:48px}
.privacy-dialog h2{font-size:28px;line-height:1.3}.privacy-dialog p{font-size:16px;line-height:1.8}
.article-content,.programme-day-body,.programme-cost,.legal-content{font-size:16px;line-height:1.85}
.article-content h2,.programme-content h2,.generic-content .programme-content h2,.tour-page-content h2,.legal-content h2{font-size:28px;line-height:1.3;letter-spacing:-.5px}
.article-content h3,.legal-content h3{font-size:22px;line-height:1.4}
.generic-content .programme-day-body,.programme-booking p{font-size:16px;line-height:1.85}
.programme-day>summary{font-size:18px;line-height:1.6}
.programme-intro,.programme-note,.programme-documents{font-size:14px;line-height:1.8}
@media(max-width:1000px){.main-nav a{font-size:16px}}
@media(max-width:700px){
:root{--type-h1:30px;--type-h2:26px;--type-h3:20px}
h1,.generic-content h1,.tour-page-heading h1,.legal-page h1{font-size:30px;line-height:1.2;letter-spacing:-.6px}
h2,.about-copy h2,.faq-section h2,.steps-section h2,.contact-copy h2{font-size:26px;line-height:1.3;letter-spacing:-.4px}
h3,.steps-grid h3{font-size:20px}
.hero h1{font-size:clamp(30px,8.2vw,36px);line-height:1.15;letter-spacing:-.8px}
.hero-intro{font-size:16px;line-height:1.7}
.hero .button,.trip-finder>.button,.button{font-size:14px;min-height:48px}
.eyebrow,.hero .eyebrow{font-size:11px;letter-spacing:1.2px}
.hero-location{font-size:12px}.hero-location small{font-size:11px}
.finder-title{font-size:15px}.field-label{font-size:11px;letter-spacing:.7px}
.select-field select{font-size:16px;padding-right:16px}
.trip-finder{gap:18px 0}.select-field{min-width:0}.select-field>span{min-width:0;max-width:100%}
.trust-strip>span{font-size:12px;line-height:1.6}
.section-intro,.about-copy>p:not(.eyebrow),.faq-section>div>p:not(.eyebrow),.steps-grid p,.faq-list details p{font-size:16px;line-height:1.8}
.filter{font-size:13px;padding:9px 13px}.result-count{font-size:12px}
.tour-card h3{font-size:22px}.tour-date,.tour-route{font-size:14px}.tour-tag{font-size:12px}
.tour-price,.tour-card-bottom .tour-price{font-size:26px}.tour-price small{font-size:14px}.tour-price.inquiry{font-size:18px}
.tour-bottom p,.calendar-note,.about-services span{font-size:14px;line-height:1.8}
.calendar-row{grid-template-columns:90px minmax(0,1fr) 28px;gap:12px}
.calendar-date strong{font-size:14px}.calendar-date small{font-size:12px}.calendar-name{font-size:16px;line-height:1.5}.calendar-name small{font-size:13px}
.faq-list summary{font-size:16px;line-height:1.6}
.contact-copy>p:not(.eyebrow){font-size:16px}.contact-phone{font-size:26px}.contact-email{font-size:18px}
.contact-form h3{font-size:20px}.contact-form label{font-size:14px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}
.form-note,.contact-hint,.contact-form .consent-label,.contact-form .consent-label .privacy-button{font-size:13px}
.newsletter-section h2{font-size:26px}.newsletter-section p:not(.eyebrow){font-size:16px}.newsletter-section .form-note{font-size:13px}
.footer-main>span,.footer-main>a:not(.brand){font-size:13px}.footer-main>span{max-width:160px}.footer-bottom,.footer-bottom .privacy-button{font-size:12px}
.dialog-body h2{font-size:26px}.dialog-meta{font-size:14px}.dialog-summary,.dialog-columns p,.dialog-columns li{font-size:16px}
.dialog-bottom{flex-wrap:wrap;gap:18px}.dialog-bottom .button{font-size:14px}.dialog-bottom .tour-price{font-size:24px}
.privacy-dialog h2{font-size:26px}.privacy-dialog p{font-size:16px}
.article-content h2,.programme-content h2,.generic-content .programme-content h2,.tour-page-content h2,.legal-content h2{font-size:24px}
.article-content h3,.legal-content h3{font-size:20px}
.article-content,.programme-day-body,.generic-content .programme-day-body,.programme-cost,.legal-content{font-size:16px}
.programme-day>summary{font-size:16px}.programme-booking p{font-size:16px}
}

.text-link,.newsletter-input-row .button,.programme-link{font-size:14px}
.newsletter-form-wrap label,.newsletter-form-wrap .newsletter-consent{font-size:13px;line-height:1.8}
.newsletter-input-row input{font-size:16px}
.arkoris-news-copy h3{font-size:22px;line-height:1.4}
.arkoris-news-copy p{font-size:16px;line-height:1.8}
.arkoris-news-copy time,.arkoris-news-article time{font-size:14px}
@media(max-width:700px){.arkoris-news-copy h3{font-size:20px}}
