/* Footer 2026: exact Rooms 2026 footer, isolated from legacy page styles.
 * Used by get_footer( '2026' ); sizes do not depend on the page's root font size.
 */
@font-face {
    font-family: 'xinalani';
    src: url('fonts/xinalani.woff') format('woff');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}
#xinalani-footer-2026 { margin: 0; padding: 0; width: 100%; font-size: 16px; text-align: start; -webkit-font-smoothing: antialiased; }
#xinalani-footer-2026 *,
#xinalani-footer-2026 *::before,
#xinalani-footer-2026 *::after {
    box-sizing: border-box;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    letter-spacing: normal;
    text-transform: none;
}
#xinalani-footer-2026 :is(p, h2, ul, li, form) { margin: 0; padding: 0; }
#xinalani-footer-2026 ul.social { float: none; }
#xinalani-footer-2026 a.icon { display: inline; text-decoration: none; }
#xinalani-footer-2026 a.icon::before {
    font-family: 'xinalani' !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#xinalani-footer-2026 .icon-facebook::before { content: '\61'; }
#xinalani-footer-2026 .icon-instagram::before { content: '\63'; }
#xinalani-footer-2026 .icon-tripadvisor::before { content: '\65'; }
#xinalani-footer-2026 .icon-vimeo::before { content: '\67'; }

/* ---------- DAY PASS FOOTER ---------- */
#xinalani-footer-2026{--ff:'Prata',serif;--fb:'Karla',sans-serif;background:#F7F2EC;color:#1a1a1a;font-family:var(--fb);font-weight:300;line-height:1.6}
#xinalani-footer-2026 *,#xinalani-footer-2026 *::before,#xinalani-footer-2026 *::after{box-sizing:border-box}
#xinalani-footer-2026 img{width:auto;height:auto;max-width:100%;object-fit:contain;display:inline-block}
#xinalani-footer-2026 .ft-wrap{max-width:1120px;margin:0 auto;padding:56px 24px 48px}
/* Logo */
#xinalani-footer-2026 .ft-logo{text-align:center;margin-bottom:40px}
#xinalani-footer-2026 .ft-logo img{max-width:190px}
/* Links: 4 columns, normal case, tight spacing (overrides theme footer styles) */
#xinalani-footer-2026 .ft-links ul{list-style:none;columns:4;column-gap:40px;border:0 !important;padding:0 !important;margin:0 !important;text-align:left !important}
#xinalani-footer-2026 .ft-links li{display:block !important;break-inside:avoid;text-align:left !important;margin:0 0 4px !important;padding:0 !important;border:0 !important;line-height:1.4 !important}
#xinalani-footer-2026 .ft-links a{display:inline !important;padding:0 !important;margin:0 !important;color:#1a1a1a;font-size:15px !important;line-height:1.4 !important;text-transform:none !important;letter-spacing:0 !important;text-decoration:none}
#xinalani-footer-2026 .ft-links a:hover{color:#A4441E}
/* Social + awards: social left, 3 awards evenly spread */
#xinalani-footer-2026 .ft-badges{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;justify-items:center;gap:24px;margin-top:48px}
#xinalani-footer-2026 .ft-badges > div:first-child{justify-self:start}
#xinalani-footer-2026 .ft-badges ul.social{list-style:none;margin:0;padding:0;display:flex;gap:14px}
#xinalani-footer-2026 ul.social li a.icon{color:#1a1a1a;font-size:26px}
#xinalani-footer-2026 ul.social li a.icon:hover{color:#A4441E}
#xinalani-footer-2026 .ft-michelin img{max-height:30px}
#xinalani-footer-2026 .ft-ta img{max-height:80px}
#xinalani-footer-2026 .ft-kayak img{max-height:22px}
/* Newsletter */
#xinalani-footer-2026 .ft-news{background:#EDDFC6;text-align:center;padding:56px 24px 64px}
#xinalani-footer-2026 .ft-news h2{font-family:var(--ff);font-weight:400;font-size:clamp(27.2px,2.3vw,33.6px);color:#1a1a1a;margin:0 0 6px}
#xinalani-footer-2026 .ft-news p.ft-sub{font-size:17px;line-height:1.4;color:#1a1a1a;max-width:470px;margin:0 auto 26px}
#xinalani-footer-2026 .ft-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:760px;margin:0 auto}
#xinalani-footer-2026 .ft-row input{flex:1 1 170px;background:#fff;border:0;border-radius:999px;padding:12px 22px;font-family:var(--fb);font-size:15px;color:#1a1a1a;outline:none;height:auto;margin:0}
#xinalani-footer-2026 .ft-row input:focus{box-shadow:0 0 0 2px #A4441E}
#xinalani-footer-2026 .ft-row button{background:#A4441E;color:#fff;border:0;border-radius:999px;padding:12px 28px;font-family:var(--fb);font-size:12.8px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
#xinalani-footer-2026 .ft-row button:hover{background:#8a3818}
#xinalani-footer-2026 .ft-row button:disabled{opacity:.6;cursor:not-allowed}
#xinalani-footer-2026 .ft-msg{display:none;font-size:14px;margin:14px 0 0}
#xinalani-footer-2026 .ft-msg.err{color:#8c251a}
#xinalani-footer-2026 .ft-msg.ok{color:#545a41}
#xinalani-footer-2026 .ft-ta img{filter:brightness(0)}
/* Newsletter – emblem + decorative leaves */
#xinalani-footer-2026 .ft-emblem{display:block;max-height:56px;margin:0 auto 12px}
#xinalani-footer-2026 .ft-news{position:relative;overflow:hidden}
#xinalani-footer-2026 .ft-news > *{position:relative;z-index:1}
#xinalani-footer-2026 .ft-news::before{content:'';position:absolute;left:0;bottom:0;width:clamp(120px,12vw,200px);aspect-ratio:282/435;background:url('https://xinalaniretreat.com/wp-content/uploads/2026/09/xinalani-leaf-news-left.png') left bottom/contain no-repeat;pointer-events:none;z-index:0}
#xinalani-footer-2026 .ft-news::after{content:'';position:absolute;right:0;top:0%;width:clamp(110px,10vw,180px);aspect-ratio:260/296;background:url('https://xinalaniretreat.com/wp-content/uploads/2026/09/xinalani-leaf-boat.png') right top/contain no-repeat;pointer-events:none;z-index:0}
@media (max-width:800px){
#xinalani-footer-2026 .ft-logo img{max-width:150px}
#xinalani-footer-2026 .ft-links ul{columns:2;column-gap:24px}
#xinalani-footer-2026 .ft-links li{margin:0 0 6px !important}
#xinalani-footer-2026 .ft-links a{font-size:14px !important}
/* Badges: social row, Michelin row, then Tripadvisor + Kayak side by side */
#xinalani-footer-2026 .ft-badges{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 32px;margin-top:36px}
#xinalani-footer-2026 .ft-badges > div:first-child{flex-basis:100%;display:flex;justify-content:center;justify-self:auto}
#xinalani-footer-2026 ul.social li a.icon{font-size:22px}
#xinalani-footer-2026 .ft-michelin{flex-basis:100%;text-align:center}
#xinalani-footer-2026 .ft-michelin img{max-height:20px}
#xinalani-footer-2026 .ft-ta img{max-height:54px}
#xinalani-footer-2026 .ft-kayak img{max-height:16px}
#xinalani-footer-2026 .ft-news::before{width:90px}
#xinalani-footer-2026 .ft-news::after{width:80px}
}
@media (max-width:600px){
#xinalani-footer-2026 .ft-row input,#xinalani-footer-2026 .ft-row button{flex:none;width:100%}
#xinalani-footer-2026 .ft-row{flex-direction:column}
#xinalani-footer-2026 .ft-news{padding-bottom:110px}
}

#xinalani-footer-2026,
#xinalani-footer-2026 *,
#xinalani-footer-2026 *::before,
#xinalani-footer-2026 *::after { box-sizing: border-box; }
body #xinalani-footer-2026,
body #xinalani-footer-2026 p,
body #xinalani-footer-2026 a,
body #xinalani-footer-2026 li,
body #xinalani-footer-2026 input,
body #xinalani-footer-2026 button,
body #xinalani-footer-2026 label {
	font-family: 'Karla', sans-serif;
}
body #xinalani-footer-2026 h1,
body #xinalani-footer-2026 h2,
body #xinalani-footer-2026 h3,
body #xinalani-footer-2026 h4,
body #xinalani-footer-2026 .section-title {
	font-family: 'Prata', serif !important;
	font-weight: 400;
	letter-spacing: 0;
}
#xinalani-footer-2026 input { max-width: 100%; }
#xinalani-footer-2026 a,
#xinalani-footer-2026 a:hover,
#xinalani-footer-2026 a:focus { text-decoration: none; }
#xinalani-footer-2026 ul.social li,
#xinalani-footer-2026 ul.social li a.icon { border: 0; border-bottom: 0; box-shadow: none; background-image: none; }


#xinalani-footer-2026 a:focus-visible,
#xinalani-footer-2026 button:focus-visible { outline: 2px solid #1a1a1a; outline-offset: 3px; }
#xinalani-footer-2026 .ft-row input { width: auto; font-weight: 400; line-height: normal; }
#xinalani-footer-2026 .ft-row button { line-height: normal; }
@media (max-width: 600px) {
    #xinalani-footer-2026 .ft-row input { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    #xinalani-footer-2026 a, #xinalani-footer-2026 button, #xinalani-footer-2026 input { transition: none; }
}
