/* V172.4: retain the footer ad and leave clearance below the mobile cards. */
.index-advertising{box-sizing:border-box;flex:none;align-self:center;width:min(320px,calc(100% - 20px));min-width:0;margin:2px auto 4px;padding:0;border:0;background:none;color:#ecd9b3}
.index-advertising-meta{display:none;justify-content:space-between;align-items:center;gap:12px;font:9px/1.4 Arial,sans-serif;margin-bottom:2px}
.index-advertising:has([data-ad-link]:not([hidden])) .index-advertising-meta{display:flex}
.index-advertising-meta>span{text-transform:uppercase;letter-spacing:.15em;color:#b4b6a4}
.index-advertising-meta a{color:#e6c98e;text-decoration:none}
.index-ad-order-short{display:none}
.index-advertising-banner,.index-advertising-empty{display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden;text-decoration:none;color:inherit}
.index-advertising-banner{aspect-ratio:8/1;max-height:40px}
.index-advertising-banner img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.index-advertising-copy{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font:12px/1.2 Arial,sans-serif;text-align:center;color:#ecd9b3}
.index-advertising-banner.is-text-ad:hover .index-advertising-copy{text-decoration:underline;color:#fff0d1}
.index-advertising-empty{height:24px;gap:5px;box-sizing:border-box;text-align:center;font:12px/1.4 Arial,sans-serif}
.index-advertising-empty strong{font:inherit}
.index-advertising-empty:hover{color:#fff0d1;text-decoration:underline}
.index-advertising [hidden]{display:none!important}
.index-advertising-banner,.index-advertising-empty{position:relative;border-radius:3px}
.index-advertising-banner::after,.index-advertising-empty::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px #e2bc6999,inset 0 0 10px #dfaa493b;background:linear-gradient(110deg,#dba53a29,transparent 70%);animation:index-ad-pulse 2.8s ease-in-out infinite}
.index-advertising-copy,.index-advertising-empty strong{text-shadow:0 0 5px #dfaa4966}
@keyframes index-ad-pulse{0%,100%{opacity:.18}50%{opacity:1}}
.index-advertising:hover .index-advertising-banner::after,.index-advertising:hover .index-advertising-empty::after,.index-advertising:focus-within .index-advertising-banner::after,.index-advertising:focus-within .index-advertising-empty::after{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.index-advertising-banner::after,.index-advertising-empty::after{animation:none;opacity:.8}}
.portal-board.has-index-ad{display:flex!important;flex-direction:column;overflow:hidden}
.portal-board.has-index-ad>.portal-header,.portal-board.has-index-ad>.portal-footer{flex:none}
.portal-board.has-index-ad>.portal-main{flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.index-advertising a:focus-visible{outline:2px solid #e6c98e;outline-offset:2px}
.portal-board>.portal-footer.has-footer-ad{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(120px,200px) auto auto;gap:10px;flex-wrap:nowrap}
.portal-footer.has-footer-ad>.index-advertising{width:100%;max-width:200px;margin:0;justify-self:center;align-self:center}
.portal-footer.has-footer-ad .index-advertising-banner{height:24px;max-height:24px;aspect-ratio:auto}
.portal-footer.has-footer-ad .index-advertising-copy{font-size:10px;line-height:12px}
.portal-footer.has-footer-ad .index-advertising-meta{font-size:8px;line-height:10px;gap:5px;margin-bottom:2px}
.portal-footer.has-footer-ad .index-advertising-empty{height:32px;font-size:10px;line-height:1.3}
.portal-board>.portal-footer.has-footer-ad nav{margin:0;gap:10px}
.portal-board>.portal-footer.has-footer-ad nav a{font-size:10px}
.portal-board>.portal-footer.has-footer-ad .visitor-counter{min-width:0;max-width:60px}
.portal-board>.portal-footer.has-footer-ad .visitor-counter img{max-width:60px}
@media(min-width:781px) and (max-width:1100px){
 .portal-board>.portal-footer.has-footer-ad{grid-template-columns:auto minmax(110px,180px) minmax(0,1fr) auto}
 .portal-board>.portal-footer.has-footer-ad .footer-brand{display:flex}
 .portal-board>.portal-footer.has-footer-ad .footer-promise{display:none}
 .portal-board>.portal-footer.has-footer-ad nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 10px}
}
@media(min-width:781px) and (max-width:900px){
 .portal-board>.portal-footer.has-footer-ad{grid-template-columns:auto 110px minmax(0,1fr) auto}
 .portal-footer.has-footer-ad .index-advertising-meta{justify-content:center}
 .portal-footer.has-footer-ad .index-advertising-meta>span,.portal-footer.has-footer-ad .index-ad-order-full{display:none}
 .portal-footer.has-footer-ad .index-ad-order-short{display:inline}
}
@media(max-width:780px){
 .portal-board.has-index-ad{position:relative!important;inset:0!important;transform:none!important;width:100%!important;height:100dvh!important;min-height:0!important}
 .portal-board.has-index-ad>.portal-main{display:flex;flex-direction:column;padding-bottom:12px;scroll-padding-bottom:12px}
 .portal-board.has-index-ad>.portal-main>*{flex:none}
 .portal-board.has-index-ad .portal-hero{min-height:290px}
 .portal-board.has-index-ad .feature-grid{height:74px}
 .portal-board.has-index-ad .tribes-section{height:108px}
 .portal-board.has-index-ad .campaign-grid{height:147px}
 .portal-board>.portal-footer.has-footer-ad{grid-template-columns:minmax(70px,min(110px,24vw)) minmax(0,1fr) 32px;gap:8px;padding:4px 10px;min-height:38px}
 .portal-board>.portal-footer.has-footer-ad .footer-brand,.portal-board>.portal-footer.has-footer-ad .footer-promise{display:none}
 .portal-footer.has-footer-ad .index-advertising-banner{height:20px;max-height:20px}
 .portal-footer.has-footer-ad .index-advertising-copy{font-size:9px;line-height:10px}
 .portal-footer.has-footer-ad .index-advertising-meta{justify-content:center;font-size:7px;line-height:9px;margin-bottom:1px}
 .portal-footer.has-footer-ad .index-advertising-meta>span{display:none}
 .portal-footer.has-footer-ad .index-ad-order-full{display:none}
 .portal-footer.has-footer-ad .index-ad-order-short{display:inline}
 .portal-footer.has-footer-ad .index-advertising-empty{height:30px;font-size:9px}
 .portal-footer.has-footer-ad .index-advertising-empty strong{max-width:100px}
 .portal-board>.portal-footer.has-footer-ad nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 6px}
 .portal-board>.portal-footer.has-footer-ad nav a{font-size:8px;line-height:1.2;overflow-wrap:anywhere}
 .portal-board>.portal-footer.has-footer-ad .visitor-counter,.portal-board>.portal-footer.has-footer-ad .visitor-counter img{max-width:32px;max-height:17px}
}
@media(max-width:780px) and (orientation:portrait) and (max-height:820px){
 .portal-board.has-index-ad>.portal-main{gap:4px}
 .portal-board.has-index-ad .hero-copy{padding-top:5px;padding-bottom:5px;gap:4px}
 .portal-board.has-index-ad .feature-grid{height:70px}
 .portal-board.has-index-ad .tribes-section{height:104px}
}
/* The order form has the same 1200 x 820 maximum frame as V171. */
.ads-page{margin:0;min-height:100dvh;display:grid;place-items:center;background:linear-gradient(#12241c55,#0b1a1880),url('images/desktop-background-v171.jpg') center/cover fixed;color:#343a2e;font:15px/1.5 system-ui,sans-serif}
.ads-page *,.ads-admin *{box-sizing:border-box}
.ads-frame{width:min(1200px,calc(100vw - 32px));height:min(820px,calc(100dvh - 32px));display:flex;flex-direction:column;background:#f4f0e7;border:1px solid #ab9470;border-radius:8px;overflow:hidden;box-shadow:0 20px 70px #0008}
.ads-header{display:flex;align-items:center;gap:20px;flex:none;min-height:64px;padding:10px 25px;background:#142520;color:#e4d3b0;border-bottom:1px solid #ab947055}
.ads-header a{color:inherit;text-decoration:none;font-size:13px}
.ads-header .travia-language-label{color:#d4c9a8}
.ads-brand{display:flex;align-items:center;gap:11px;margin-right:auto}.ads-brand strong{font:700 23px Georgia,serif;letter-spacing:.04em}.ads-brand img{border-radius:9px}
.ads-workspace{min-height:0;overflow:auto;flex:1;padding:26px 34px 34px;scrollbar-width:thin}
.ads-heading{max-width:760px;margin-bottom:24px}.ads-heading h1{margin:5px 0 8px;font:500 clamp(25px,3.2vw,37px)/1.15 Georgia,serif;color:#203d31}.ads-heading p{margin:0;color:#687163;font-size:14px}
.ads-eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#837344;font-weight:700}
.ads-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,1fr);gap:24px;align-items:start}
.ads-card,.ads-order{padding:24px;border:1px solid #d9d2c0;border-radius:8px;background:#fffdf8;box-shadow:0 5px 18px #31251106}
.ads-form{display:grid;gap:16px}.ads-form>label,.ads-price-fields>label{display:grid;gap:7px;font-size:13px;font-weight:600;color:#404b3c}
.ads-form input:not([type=checkbox]):not([type=radio]),.ads-form select{width:100%;min-width:0;min-height:43px;border:1px solid #c9cabc;border-radius:5px;padding:10px 12px;font:400 14px system-ui,sans-serif;background:#fff;color:#27372d}
.ads-form input:focus-visible,.ads-form select:focus-visible{outline:2px solid #638971;outline-offset:1px}.ads-form small{font-size:11px;font-weight:400;color:#737768}
.ads-form fieldset{margin:0;padding:0;border:0;min-width:0}.ads-form legend{margin:0 0 9px;font-size:13px;font-weight:600}
.ads-type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ads-type-options label{display:flex;align-items:center;gap:8px;padding:12px 10px;border:1px solid #d8d7c6;border-radius:5px;background:#f8f7ef;font-size:12px;cursor:pointer}.ads-type-options label:has(:checked){border-color:#557c59;background:#eaf0e5}.ads-type-options input{margin:0;flex:none;accent-color:#2c654c}.ads-type-options label:has(:disabled){opacity:.55;cursor:default}
.ads-text-preview{padding:12px;background:#e9eddf;border:1px dashed #c3cab4;border-radius:4px}.ads-text-preview>small{display:block;margin-bottom:8px;font-size:10px;color:#65705f}.ads-text-preview-link{box-sizing:content-box;max-width:200px;min-height:24px;padding:6px 8px;background:#071a1d;color:#ecd9b3;font:10px/12px Arial,sans-serif;overflow-wrap:anywhere;text-align:center}
.ads-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ads-packages label{position:relative;cursor:pointer}.ads-packages input{position:absolute;left:10px;top:12px;accent-color:#2c654c}.ads-packages span{display:flex;flex-direction:column;padding:12px 8px 12px 32px;gap:5px;background:#f8f7ef;border:1px solid #d8d7c6;border-radius:6px;font-size:13px}.ads-packages b{font-size:18px;color:#234e38;white-space:nowrap}.ads-packages input:checked+span{border-color:#557c59;background:#eaf0e5;box-shadow:0 0 0 1px #557c5930}.ads-packages input:focus-visible+span{outline:2px solid #426d4c;outline-offset:2px}
.ads-form>.ads-consent{display:flex;align-items:flex-start;gap:9px;font-weight:400;font-size:12px;line-height:1.55}.ads-consent input{flex:none;width:17px;height:17px;margin:2px 0 0;accent-color:#426d4c}
.ads-button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:43px;padding:10px 18px;border:1px solid #2e5844;border-radius:5px;background:linear-gradient(#426f53,#2f543f);color:#fff!important;text-decoration:none;font:600 14px/1.35 system-ui,sans-serif;cursor:pointer}.ads-button:disabled{opacity:.65;cursor:wait}.ads-button:focus-visible{outline:2px solid #496d48;outline-offset:3px}.ads-secondary{background:#f6f3e9;color:#3c533f!important;border-color:#c7c6b4;margin-top:8px}
.ads-small{font-size:11px!important;color:#747a6b;margin:0}.ads-upload input{padding:9px!important}.ads-upload-preview{min-height:80px;background:#e9eddf;border:1px dashed #c3cab4;border-radius:4px;padding:10px;text-align:center;overflow:hidden}.ads-upload-preview img{width:100%;max-height:160px;object-fit:contain}.ads-upload-preview p{font-size:12px;color:#973c31;margin:5px 0 0}.ads-upload-preview p:empty{display:none}
.ads-explainer h2{font:500 25px/1.2 Georgia,serif;color:#2f4b36;margin:8px 0 18px}.ads-explainer ol,.ads-explainer ul{padding-left:20px;font-size:13px;color:#65705f}.ads-explainer li{margin-bottom:13px;padding-left:4px}.ads-terms{padding:20px 8px 0}.ads-terms h2{font:600 15px system-ui,sans-serif}.ads-terms li{font-size:12px;line-height:1.65}
.ads-notice{border:1px solid #d9c791;background:#fff8db;color:#705c30;padding:13px 16px;border-radius:5px;margin:0 0 20px;font-size:13px}.ads-error{background:#fff0e8;border-color:#d69d85;color:#893c2c}
.ads-order{max-width:850px;margin:auto}.ads-status{font-size:18px;font-weight:600;color:#746028;margin:0 0 20px}.ads-status small{display:block;font-size:12px;font-weight:400}.ads-status.is-active{color:#367043}.ads-order h2{font:500 24px Georgia,serif}.ads-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.ads-facts dt{font-size:12px;color:#6e7766}.ads-facts dd{margin:4px 0 0;font-weight:600;font-size:14px}.ads-order>.ads-small{margin:16px 0}.ads-order .ads-notice{margin-top:20px}.ads-order a:not(.ads-button){color:#396945}
.ads-footer{display:flex;justify-content:space-between;padding:10px 25px;font-size:11px;color:#7c826f;border-top:1px solid #dedbcd;flex:none}.ads-footer a{color:inherit}
.ads-page [hidden],.ads-admin [hidden]{display:none!important}
.ads-admin h1{font:500 30px Georgia,serif}.ads-admin>.ads-form{max-width:850px;margin:24px 0}.ads-price-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ads-table-wrap{overflow:auto;border:1px solid #d9d2c0;border-radius:7px;background:#fffdf8}.ads-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}.ads-table th,.ads-table td{padding:14px 12px;border-bottom:1px solid #e3dfd0;vertical-align:top;max-width:250px;overflow-wrap:anywhere}.ads-table th{background:#eeeada;font-size:12px}.ads-table small{display:block;font-size:10px;color:#787b70;margin-top:5px}.ads-table a{color:#3e6543}.ads-table .ads-button{font-size:12px;min-height:34px;padding:7px 12px;margin:0}.ads-pagination{display:flex;justify-content:space-between;margin-top:15px}.ads-admin>.ads-small{margin-top:12px}
@media(max-width:780px){.ads-frame{width:100%;height:100dvh;max-width:none;border:0;border-radius:0}.ads-header{padding:10px 14px;gap:12px;flex-wrap:wrap}.ads-header>a:not(.ads-brand){font-size:11px}.ads-brand strong{font-size:19px}.ads-brand img{width:34px;height:34px}.ads-workspace{padding:22px 14px}.ads-columns{grid-template-columns:1fr}.ads-card,.ads-order{padding:18px}.ads-packages{gap:6px}.ads-packages span{padding-left:25px;font-size:11px}.ads-packages b{font-size:16px}.ads-packages input{left:5px}.ads-facts{grid-template-columns:1fr 1fr}.ads-price-fields{grid-template-columns:1fr}.ads-explainer{display:grid;gap:16px}.ads-explainer h2{font-size:23px}.ads-heading{margin-bottom:20px}}
@media(max-width:780px){.ads-header>a:not(.ads-brand),.ads-header .travia-language-label{display:none}.ads-header{flex-wrap:nowrap}.ads-header .travia-language{flex:none;margin:0}.ads-packages b{white-space:normal;overflow-wrap:anywhere}}
