/* Aloha Massage Kauai: shared site template (all pages except the homepage, which inlines the same tokens).
   Loaded by /includes/header.html. Restyles existing page markup; changes no page text. */

@font-face{font-family:"Lora";src:url("/fonts/lora-latin-var.woff") format("woff");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Lora Fallback";src:local("Times New Roman"),local("TimesNewRomanPSMT"),local("Liberation Serif"),local("Times");size-adjust:114.5%;ascent-override:87.9%;descent-override:23.9%;line-gap-override:0%}

/* ---------- Design tokens (same values as the homepage) ---------- */
:root{
	--amk-lagoon:#045255;
	--amk-lagoon-deep:#033d3f;
	--amk-reef-ink:#0a6965;
	--amk-wave-1:#58ccc1;
	--amk-wave-2:#3cb5ac;
	--amk-wave-3:#2ba59f;
	--amk-wave-4:#209995;
	--amk-seaglass:#93e5db;
	--amk-mist:#d3f0eb;
	--amk-foam:#eff9f7;
	--amk-line:#d2ebe6;
	--amk-gold:#ffd35e;
	--amk-gold-hover:#ffc834;
	--amk-ink:#132f2e;
	--amk-white:#fff;
	--amk-serif:"Lora","Lora Fallback",Georgia,"Times New Roman",serif;
	--amk-sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
	--amk-masthead:62px;
	--amk-bar:64px;
	--amk-gutter:clamp(1rem,.55rem + 2vw,2.5rem);
	--amk-wrap:73rem;
	--amk-book-w:12.75rem;
}
@media (min-width:64rem){:root{--amk-masthead:76px;--amk-bar:0px}}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-bottom:calc(var(--amk-bar) + 1rem)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--amk-white);color:var(--amk-ink);font:400 1.0625rem/1.6 var(--amk-sans)}
#outer,#master{margin:0;padding:0}
.amk-wrap{width:min(100% - 2 * var(--amk-gutter),var(--amk-wrap));margin-inline:auto}
.amk-i{display:block;width:1.25em;height:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.amk-vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.amk-sprite{position:absolute;width:0;height:0;overflow:hidden}
.amk-main-anchor{display:block;height:0}
.amk-main-anchor:focus{outline:none}

/* Focus: visible on every surface */
:focus-visible{outline:3px solid var(--amk-lagoon);outline-offset:3px}
.amk-on-dark :focus-visible,.amk-masthead :focus-visible,.amk-navbar :focus-visible{outline-color:var(--amk-gold)}
.amk-on-dark .amk-btn-book:focus-visible,.amk-masthead .amk-btn-book:focus-visible{outline-color:var(--amk-white)}
.amk-skip{position:absolute;left:1rem;top:-6rem;z-index:300;padding:.8rem 1.1rem;border-radius:10px;background:var(--amk-gold);color:var(--amk-lagoon);font:700 1rem/1.2 var(--amk-sans);text-decoration:none}
.amk-skip:focus{top:.75rem}

/* ---------- Buttons and calls to action ---------- */
.amk-btn-book{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:0 1.6rem;border-radius:999px;background:var(--amk-gold);color:var(--amk-lagoon);font:700 1rem/1 var(--amk-sans);letter-spacing:.06em;text-decoration:none;white-space:nowrap;box-shadow:inset 0 -2px 0 rgba(4,82,85,.18)}
.amk-btn-book:hover{background:var(--amk-gold-hover);color:var(--amk-lagoon)}
.amk-call-link{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--amk-lagoon);font:700 1.0625rem/1.2 var(--amk-sans);text-decoration:none;white-space:nowrap}
.amk-call-link:hover{text-decoration:underline;text-underline-offset:.2em}
.amk-on-dark .amk-call-link{color:var(--amk-white)}

/* ---------- Header (contact-info.html) ---------- */
.amk-utility{display:none;background:var(--amk-lagoon-deep);color:var(--amk-mist);font-size:.92rem}
.amk-utility .amk-wrap{display:flex;justify-content:flex-end;align-items:center;gap:1.75rem;min-height:2.25rem}
.amk-utility a{display:inline-flex;align-items:center;gap:.45rem;min-height:24px;color:var(--amk-white);text-decoration:none}
.amk-utility a:hover{text-decoration:underline;text-underline-offset:.2em}
@media (min-width:64rem){.amk-utility{display:block}}
.amk-masthead{background:var(--amk-lagoon);color:var(--amk-white)}
.amk-masthead .amk-wrap{display:flex;align-items:center;gap:clamp(.5rem,1vw,1.1rem);min-height:var(--amk-masthead)}
.amk-brand{display:flex;align-items:center;gap:.6rem;margin-right:auto;flex:none}
.amk-brand img{display:block;width:40px;height:40px;flex:none}
.amk-brand h1{margin:0;padding:0;color:var(--amk-white);font:600 1rem/1.08 var(--amk-serif);letter-spacing:.11em;text-transform:uppercase}
.amk-brand-l2{display:block;margin-top:.2em;font-size:.8em;letter-spacing:.36em}
@media (min-width:64rem){
	.amk-brand img{width:48px;height:48px}
	.amk-brand h1{font-size:1.06rem;letter-spacing:.08em;white-space:nowrap}
	.amk-brand-l2{display:inline;margin:0;font-size:1em;letter-spacing:inherit}
}
.amk-masthead .amk-btn-book{display:none;min-height:2.85rem;padding:0 1.35rem;font-size:.95rem}
@media (min-width:64rem){.amk-masthead .amk-btn-book{display:inline-flex}}
@media (min-width:80rem){.amk-masthead .amk-btn-book{width:var(--amk-book-w);padding:0}}
.amk-menu-toggle{display:none}
.js .amk-menu-toggle{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;min-width:44px;padding:0 .95rem;border:1px solid rgba(147,229,219,.6);border-radius:999px;background:transparent;color:var(--amk-white);font:600 .95rem/1 var(--amk-sans);cursor:pointer}
.js .amk-menu-toggle:hover{background:rgba(147,229,219,.14)}
@media (max-width:23.74rem){.js .amk-menu-toggle{padding:0;justify-content:center}.amk-menu-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}

/* ---------- Navigation (menu-top.html): slide-in panel below 80rem, inline in the header bar above ---------- */
.amk-navbar{background:var(--amk-lagoon);color:var(--amk-white)}
.amk-navbar-inner{display:flex;align-items:center;justify-content:flex-end;min-height:3.5rem}
.amk-header+.amk-navbar{background:none}
.amk-header+.amk-navbar .amk-menu-toggle--fallback{display:none}
@media (max-width:79.99rem){.amk-header+.amk-navbar .amk-navbar-inner{min-height:0}}
.amk-v-lg{display:none}
.amk-nav{display:none}
.js .amk-nav{display:block;position:fixed;z-index:100;top:0;right:0;bottom:0;width:min(100%,25rem);overflow-y:auto;overscroll-behavior:contain;background:var(--amk-white);color:var(--amk-ink);transform:translateX(100%);visibility:hidden;transition:transform .25s ease,visibility 0s linear .25s;padding-bottom:env(safe-area-inset-bottom,0px)}
.js .amk-nav.is-open{transform:none;visibility:visible;transition:transform .25s ease}
.amk-nav :focus-visible{outline-color:var(--amk-lagoon)}
.amk-nav-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem .6rem 1.25rem;background:var(--amk-white);border-bottom:1px solid var(--amk-line)}
.amk-nav-head img{display:block;width:40px;height:40px}
.amk-nav-close{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:999px;background:var(--amk-foam);color:var(--amk-lagoon);cursor:pointer}
.amk-nav ul{margin:0;padding:0;list-style:none}
.amk-nav-list{padding:.25rem 0}
.amk-nav-list>li{border-bottom:1px solid var(--amk-line)}
.amk-nav-list>li>a,.amk-sub-toggle{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-height:54px;padding:.25rem 1.25rem;border:0;background:none;color:var(--amk-lagoon);font:600 1.05rem/1.2 var(--amk-sans);text-align:left;text-decoration:none;cursor:pointer}
.amk-sub-toggle .amk-i{transition:transform .2s ease}
.amk-sub-toggle[aria-expanded="true"] .amk-i{transform:rotate(180deg)}
.amk-sub{display:none;padding:0 1.25rem .9rem}
.amk-nav .amk-sub{padding:0 1.25rem .9rem}
.amk-sub-toggle[aria-expanded="true"]+.amk-sub{display:block}
.amk-sub a{display:flex;align-items:center;min-height:44px;padding:0 .9rem;border-left:2px solid var(--amk-seaglass);color:var(--amk-ink);text-decoration:none}
.amk-sub a:hover{background:var(--amk-foam);border-left-color:var(--amk-lagoon)}
.amk-nav-actions{display:grid;gap:.5rem;padding:1.25rem}
.amk-nav-actions .amk-btn-book{width:100%}
.amk-nav-actions .amk-text-link{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;color:var(--amk-lagoon);font-weight:600;text-decoration:none}
.amk-nav-backdrop{position:fixed;inset:0;z-index:90;background:rgba(3,40,42,.55)}
.amk-nav-backdrop[hidden]{display:none}
body.amk-nav-open{overflow:hidden}
@media (min-width:80rem){
	.js .amk-menu-toggle{display:none}
	.amk-header+.amk-navbar{position:relative;z-index:55;height:var(--amk-masthead);margin-top:calc(-1 * var(--amk-masthead));pointer-events:none}
	.amk-header+.amk-navbar .amk-navbar-inner{height:100%;padding-right:calc(var(--amk-book-w) + clamp(.5rem,1vw,1.1rem))}
	.amk-navbar-inner{justify-content:center}
	.amk-header+.amk-navbar .amk-navbar-inner{justify-content:flex-end}
	.amk-nav,.js .amk-nav{display:block;position:static;width:auto;overflow:visible;background:none;color:inherit;transform:none;visibility:visible;transition:none;padding:0;pointer-events:auto}
	.amk-nav :focus-visible{outline-color:var(--amk-gold)}
	.amk-nav .amk-sub :focus-visible{outline-color:var(--amk-lagoon)}
	.amk-nav-head,.amk-nav-actions{display:none}
	.amk-nav-list{display:flex;align-items:center;gap:.1rem;padding:0}
	.amk-nav-list>li{position:relative;border:0}
	.amk-nav-list>li>a,.amk-sub-toggle{width:auto;min-height:44px;padding:0 .65rem;border-radius:999px;color:var(--amk-white);font:500 .97rem/1 var(--amk-sans);white-space:nowrap}
	.amk-nav-list>li>a:hover,.amk-sub-toggle:hover,.amk-sub-toggle[aria-expanded="true"]{background:rgba(147,229,219,.16);color:var(--amk-white)}
	.amk-sub-toggle .amk-i{width:1rem;height:1rem}
	.amk-v-sm{display:none}
	.amk-v-lg{display:inline}
	.amk-nav .amk-sub{position:absolute;top:calc(100% + .55rem);left:0;z-index:60;min-width:29rem;padding:.75rem;border-radius:16px;background:var(--amk-white);box-shadow:0 26px 50px -18px rgba(3,40,42,.45);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:.5rem}
	.amk-nav .amk-has-sub:last-of-type .amk-sub{left:auto;right:0}
	.amk-sub-toggle[aria-expanded="true"]+.amk-sub{display:grid}
	.amk-sub-rows-6{grid-auto-flow:column;grid-template-rows:repeat(6,auto)}
	.amk-sub-rows-5{grid-auto-flow:column;grid-template-rows:repeat(5,auto)}
	.amk-sub a{min-height:42px;padding:0 .8rem;border-left:0;border-radius:10px}
	html:not(.js) .amk-has-sub:hover>.amk-sub,html:not(.js) .amk-has-sub:focus-within>.amk-sub{display:grid}
}

/* ---------- Page layout: photo beside the page's own content, links band below ---------- */
#mainframe{display:grid;grid-template-columns:[full-start] minmax(var(--amk-gutter),1fr) [main-start] minmax(0,var(--amk-wrap)) [main-end] minmax(var(--amk-gutter),1fr) [full-end];align-content:start}
#mainframe>*{grid-column:main;min-width:0}
#mainframe>#massage-stones,#mainframe>#massage-stones2,#massage-stones,#massage-stones2{display:none}
#mainframe>.amk-links{grid-column:full}
#massage-image,#massage-image2,#massage-image3{position:relative;aspect-ratio:16/11;margin-top:1rem;overflow:hidden;border-radius:50% 50% 0 0/32% 32% 0 0;background-color:var(--amk-seaglass);background-repeat:no-repeat;background-size:cover;background-position:center}
#massage-image3{background-image:url("/images/lomi-lomi-massage.jpg")}
@media screen and (min-device-width:768px){#massage-image3{background-image:url("/images/massage-narrow2.jpg");background-position:bottom right}}
#best-massage-award{margin-top:1rem;overflow:hidden;border-radius:24px;background:var(--amk-foam)}
#best-massage-award img{display:block;width:100%;height:auto}
.book-button-container{position:absolute;left:0;right:0;bottom:clamp(1rem,3vw,1.75rem);display:flex;justify-content:center;padding:0 1rem}
#mainframe a.book-button,#mainframe a.book-button:link,#mainframe a.book-button:visited{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:0 1.6rem;border-radius:999px;background:var(--amk-gold);color:var(--amk-lagoon);font:700 1rem/1 var(--amk-sans);letter-spacing:.06em;text-decoration:none;white-space:nowrap;box-shadow:0 10px 28px -10px rgba(3,40,42,.55),inset 0 -2px 0 rgba(4,82,85,.18)}
#mainframe a.book-button:hover{background:var(--amk-gold-hover);color:var(--amk-lagoon)}
#massage-info,#kauai-massage-info2,#kauai-best-massage-info{min-width:0}
#massage-information,#massage-information2,#best-massage-info{max-width:46rem;padding:1.75rem 0 3rem}
@media (min-width:60rem){
	#mainframe{grid-template-columns:[full-start] minmax(var(--amk-gutter),1fr) [main-start] minmax(0,calc(var(--amk-wrap) * .57)) [aside-start] minmax(0,calc(var(--amk-wrap) * .43)) [main-end] minmax(var(--amk-gutter),1fr) [full-end];padding-top:clamp(2rem,3.5vw,3.25rem)}
	#mainframe>#massage-image,#mainframe>#massage-image2,#mainframe>#massage-image3,#mainframe>#best-massage-award{grid-column:aside-start/main-end;grid-row:1;align-self:start;margin-top:0}
	#mainframe>#massage-info,#mainframe>#kauai-massage-info2,#mainframe>#kauai-best-massage-info{grid-column:main-start/aside-start;grid-row:1;padding-right:clamp(2rem,4vw,4rem)}
	#massage-image,#massage-image2,#massage-image3{aspect-ratio:6/5}
	#massage-information,#massage-information2,#best-massage-info{padding-top:.25rem}
}

/* ---------- The page's own content: typography only (words, links and markup unchanged) ---------- */
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) h1,
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) h2{margin:0 0 1rem;color:var(--amk-lagoon);font:500 clamp(2rem,1.4rem + 2.3vw,3rem)/1.1 var(--amk-serif);letter-spacing:-.01em;text-wrap:balance}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) h3{margin:2rem 0 .6rem;color:var(--amk-lagoon);font:500 clamp(1.35rem,1.2rem + .55vw,1.6rem)/1.25 var(--amk-serif);text-wrap:balance}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) h4{margin:1.5rem 0 .5rem;color:var(--amk-ink);font:700 1.05rem/1.4 var(--amk-sans)}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) p{margin:0 0 1rem}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) :is(ul,ol){margin:0 0 1rem;padding-left:1.4rem}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) li{margin:.2rem 0}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) dl{margin:0 0 1rem}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) dd{margin:0 0 .75rem 2.25rem}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) a{color:var(--amk-lagoon);text-decoration-thickness:1px;text-underline-offset:.2em}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) a:hover{color:var(--amk-reef-ink);text-decoration-thickness:2px}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) em{font-style:normal;font-weight:700}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) hr{height:0;margin:1.5rem 0;border:0;border-top:1px solid var(--amk-line)}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) img{max-width:100%;height:auto}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) table{max-width:100%;border-collapse:collapse}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) :is(td,th){padding:.3rem .6rem;vertical-align:top}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) select{max-width:100%;min-height:44px;padding:.4rem .6rem;border:1px solid var(--amk-wave-2);border-radius:10px;background:var(--amk-white);color:var(--amk-ink);font:inherit}
a.subtle,a.subtle:link,a.subtle:visited{color:var(--amk-lagoon);text-decoration:underline;text-decoration-color:rgba(4,82,85,.38)}
a.subtle:hover{color:var(--amk-reef-ink);text-decoration-color:currentColor}
a.phone2{font-weight:700}
p.massage-locations{color:#2c4a48}
div.align-right{margin:.25rem 0 1.25rem}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) span.desktop>br:only-child{display:none}
div.schedule-massage-online-button a.button{white-space:nowrap}
a.fancy,a.fancy:link,a.fancy:visited{color:var(--amk-lagoon);font-weight:700;font-size:1.05rem;text-decoration:underline;text-decoration-color:var(--amk-wave-1);text-decoration-thickness:2px;text-underline-offset:.3em}
a.fancy:hover{color:var(--amk-reef-ink);text-decoration-color:currentColor}
hr.menu{margin:1.25rem 0 1.5rem}
div.scrolling,div.scrolling2,div.scrolling3,div.scrolling4{height:auto;overflow:visible;margin:0 0 1.25rem}

/* Buttons used inside page content */
a.button,a.button3,a.button-bridal-massage,a.button-massage-for-brides,#mainframe a.button-bridal-massage{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:2.75rem;padding:.35rem 1.15rem;border:1px solid var(--amk-wave-2);border-radius:999px;background:var(--amk-white);color:var(--amk-lagoon);font:600 1rem/1.2 var(--amk-sans);text-align:center;text-decoration:none;text-shadow:none;box-shadow:none;white-space:normal;vertical-align:middle;cursor:pointer}
a.button:hover,a.button3:hover,a.button-bridal-massage:hover,a.button-massage-for-brides:hover,#mainframe a.button-bridal-massage:hover{border-color:var(--amk-lagoon);background:var(--amk-mist);color:var(--amk-lagoon)}
div.massage-name{display:inline-block;margin:0 .2rem .65rem 0;padding:0}
div.massage-links{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.25rem 0}
div.massage-link{float:none;width:auto;padding:0}
a[onclick]{cursor:pointer}

/* Price forms (content includes): duration choices + scheduling buttons */
table.massage-form{width:100%;max-width:30rem;margin:1.5rem 0;border-collapse:separate;border-spacing:0;border:1px solid var(--amk-line);border-radius:18px;background:var(--amk-foam)}
table.massage-form td{padding:.3rem 1.15rem;vertical-align:middle}
table.massage-form tr:first-child td{padding-top:1rem}
table.massage-form tr:last-child td{padding-bottom:1.15rem}
table.massage-form input[type="radio"]{width:1.2rem;height:1.2rem;margin:0 .65rem 0 0;vertical-align:middle;accent-color:var(--amk-lagoon);cursor:pointer}
table.massage-form label{font-weight:600;vertical-align:middle;cursor:pointer}
a.button2{display:inline-flex;align-items:center;justify-content:center;min-width:min(14rem,100%);min-height:2.9rem;margin:.3rem 0;padding:0 1.4rem;border:1.5px solid var(--amk-lagoon);border-radius:999px;background:var(--amk-white);color:var(--amk-lagoon);font:700 .98rem/1.1 var(--amk-sans);text-align:center;text-decoration:none;cursor:pointer}
a.button2:hover{background:var(--amk-mist);color:var(--amk-lagoon)}
a.button2[onclick*="Online"],a.button2[onclick*="MobileMassage"]{background:var(--amk-lagoon);color:var(--amk-white)}
a.button2[onclick*="Online"]:hover,a.button2[onclick*="MobileMassage"]:hover{background:var(--amk-reef-ink);color:var(--amk-white)}

/* Massage pop-up panels (toggle3 in expand-collapse.js shows them; hidden until then) */
.massage-description{position:fixed;left:0;right:0;bottom:0;z-index:102;max-height:88vh;overflow:auto;overscroll-behavior:contain;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;background:var(--amk-white);color:var(--amk-ink);box-shadow:0 -20px 50px -20px rgba(3,40,42,.5)}
.massage-description>br:first-child{display:none}
.massage-description .header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 .75rem;padding:0;overflow:visible}
.massage-description .header .float-left,.massage-description .header .float-right{float:none;margin:0}
:where(#massage-info,#kauai-massage-info2,#kauai-best-massage-info) .massage-description h3{margin:0}
a.close2,a.close2:link,a.close2:visited{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:999px;background:var(--amk-foam);color:var(--amk-lagoon);font:600 1.15rem/1 var(--amk-sans);text-decoration:none}
a.close2:hover{background:var(--amk-mist)}
a.close,a.close:link,a.close:visited{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1.25rem;border:1px solid var(--amk-wave-2);border-radius:999px;color:var(--amk-lagoon);font-weight:600;text-decoration:none}
.fade-out{position:fixed;inset:0;z-index:101;background:rgba(3,40,42,.55)}
@media (min-width:48rem){
	.massage-description{top:50%;left:50%;right:auto;bottom:auto;width:min(40rem,calc(100vw - 2rem));max-height:min(86vh,52rem);padding:1.5rem 1.75rem;border-radius:22px;transform:translate(-50%,-50%);box-shadow:0 30px 70px -20px rgba(3,40,42,.55)}
}

/* Tables and older layout helpers used inside content */
td.align-right,td.align-top-right{text-align:right}
td.align-top-right{vertical-align:top}
table.massage-prices{text-align:right}
table.massage-prices th{font-weight:700;text-decoration:underline}
table.massage-prices td.modality,table.massage-prices th.modality,td.price,th.price{text-align:left}
table.kauai_massage_locations{text-align:center}
table.kauai_massage_locations th{width:33%;font-weight:700}
table.testimonials td{padding:.25rem 0}
td.top-left-nowrap{white-space:nowrap}
.float-left{float:left}
.float-right{float:right}
img.good,img.bad{float:left;margin:0 .6rem 0 0}
dt.good-and-bad{display:block;min-height:26px;margin:0 0 .4rem;font-weight:700}
div.schedule-massage-table{display:table;width:100%;margin:.5rem 0 1rem}
div.schedule-massage-online{display:table-row}
div.schedule-massage-online-text{display:table-cell;padding-right:1rem;vertical-align:middle}
div.schedule-massage-online-button{display:table-cell;text-align:right;vertical-align:middle}
div.couples-massage-table{display:table;width:100%;margin-top:20px}
div.couples-massage-prices{display:table-cell}
div.couples-massage-scheduling{display:table-cell;text-align:right}
iframe#schedule-massage{display:block;width:100%;height:850px;border:0;border-top:1px solid var(--amk-line)}
@media (max-width:40rem){
	table.massage-prices{display:block;max-width:100%;overflow-x:auto;font-size:.9rem}
	table.massage-prices :is(td,th){padding:.25rem .35rem}
	table.kauai_massage_locations{width:100%;table-layout:fixed}
	table.kauai_massage_locations :is(td,th){padding:.25rem .15rem;font-size:.9rem}
	table.kauai_massage_locations a.button3{max-width:100%;padding:.3rem .5rem;font-size:.88rem}
	.schedule-massage :is(a.button,a.button2){min-width:0;padding-inline:.6rem;font-size:.85rem}
	.schedule-massage select.online-scheduling-select{width:100%;min-width:0;font-size:.8rem;padding-inline:.25rem}
	div.schedule-massage-table,div.schedule-massage-online,div.schedule-massage-online-text,div.schedule-massage-online-button{display:block;text-align:left}
	div.schedule-massage-online-button{margin-top:.6rem}
}

/* ---------- Links band (menu-sidebar.html) ---------- */
.amk-links{margin-top:clamp(.5rem,2vw,1.5rem);padding-block:clamp(2.5rem,5vw,4rem);background:var(--amk-lagoon);color:var(--amk-white)}
.amk-links-grid{display:grid;gap:2rem 3rem}
@media (min-width:48rem){.amk-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:64rem){.amk-links-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1.25fr) minmax(0,.75fr)}.amk-links-group:last-child .amk-links-list{grid-template-columns:minmax(0,1fr)}}
.amk-links-title{margin:0 0 .6rem;color:var(--amk-seaglass);font:500 1.4rem/1.2 var(--amk-serif)}
.amk-links-list,.amk-links-actions{margin:0;padding:0;list-style:none}
.amk-links-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;font-size:.98rem}
.amk-links-list a{display:flex;align-items:center;gap:.65rem;min-height:44px;color:var(--amk-white);text-decoration:none}
.amk-links-list a::before{content:"";width:.42rem;height:.42rem;flex:none;background:var(--amk-wave-1);transform:rotate(45deg)}
.amk-links-list a:hover,.amk-links-actions a:hover{text-decoration:underline;text-underline-offset:.22em}
.amk-links-actions{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(147,229,219,.28)}
.amk-links-actions a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--amk-white);font-weight:600;text-decoration:none}

/* ---------- Closing band, footer and mobile booking bar (footer.html, footer2.html) ---------- */
.amk-cta-band{padding-block:clamp(3.5rem,7vw,6rem);text-align:center;background:var(--amk-white)}
.amk-cta-band>.amk-wrap>img{display:block;width:88px;height:88px;margin-inline:auto}
.amk-display{margin:1rem 0 1.6rem;color:var(--amk-lagoon);font:500 clamp(2rem,1.35rem + 2.7vw,3.25rem)/1.1 var(--amk-serif);text-wrap:balance}
.amk-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.75rem}
.amk-cta-secondary{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem 1.75rem;margin:1.25rem 0 0;padding:0;list-style:none}
.amk-cta-secondary a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--amk-lagoon);font-weight:600;text-decoration:none}
.amk-cta-secondary a:hover{text-decoration:underline;text-underline-offset:.2em}
.amk-footer-main{padding-block:clamp(2.5rem,5vw,4rem);background:var(--amk-lagoon);color:var(--amk-mist)}
.amk-footer-grid{display:grid;gap:1.75rem;align-items:center}
@media (min-width:60rem){.amk-footer-grid{grid-template-columns:auto minmax(0,1fr);gap:3.5rem}}
.amk-footer-logo{display:block;width:min(15.5rem,72%);height:auto}
.amk-service-area{margin:0;font:500 1.15rem/1.9 var(--amk-serif)}
.amk-service-area a{color:var(--amk-white);text-decoration-color:rgba(147,229,219,.55);text-underline-offset:.22em}
.amk-service-area a:hover{text-decoration-color:var(--amk-white)}
.amk-footer-main .amk-sep{margin-inline:.3rem;color:var(--amk-wave-1);font-family:var(--amk-sans);font-size:.85em}
.amk-footer-contact{display:flex;flex-wrap:wrap;gap:0 1.75rem;margin:.5rem 0 0}
.amk-footer-contact a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--amk-white);font-weight:600;text-decoration:none}
.amk-footer-contact a:hover{text-decoration:underline;text-underline-offset:.2em}
.amk-footer-legal{padding-block:1rem;background:var(--amk-white);font-size:.93rem}
.amk-legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}
.amk-legal-links a{display:inline-flex;align-items:center;min-height:32px;color:var(--amk-lagoon);text-transform:capitalize}
.amk-legal-links .amk-sep{color:#56736f}
.amk-bar-spacer{height:calc(var(--amk-bar) + env(safe-area-inset-bottom,0px))}
.amk-booking-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:.5rem;padding:.55rem max(.75rem,env(safe-area-inset-right,0px)) calc(.55rem + env(safe-area-inset-bottom,0px)) max(.75rem,env(safe-area-inset-left,0px));background:var(--amk-lagoon);border-top:1px solid rgba(147,229,219,.35)}
.amk-booking-bar .amk-btn-book{min-height:3rem;padding:0 .6rem;font-size:.9rem;letter-spacing:.04em}
.amk-bar-call{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:3rem;padding:0 .5rem;border:1px solid rgba(147,229,219,.7);border-radius:999px;color:var(--amk-white);font:600 .93rem/1 var(--amk-sans);text-decoration:none;white-space:nowrap}
.amk-bar-call:hover{background:rgba(147,229,219,.14);color:var(--amk-white)}
body.amk-nav-open .amk-booking-bar{visibility:hidden}
@media (min-width:64rem){.amk-booking-bar,.amk-bar-spacer{display:none}}

/* ---------- Old show/hide rules, unchanged in effect (same device-width split as style-mobile / style-pc) ---------- */
.massage-description,.fade-out{display:none}
div.hiddendiv{display:none}
div.visiblediv{display:block}
.initial_state_shown{display:block}
@media screen and (max-device-width:767px){
	.desktop{display:none}
	ul.pop-up,div.pop-up{display:none}
	ul.show,div.show{display:block}
	.initial_state_none,.initial_state_variable{display:none}
	div#company-name,div#title,div.description,a.large-screens,div#spacer{display:none}
}
@media screen and (min-device-width:768px){
	.mobile{display:none}
	ul.pop-up,ul.show{display:block}
	.initial_state_variable{display:block}
	div#bottom-images,div#logo,div#divider,div#email{display:none}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.amk-btn-book,.amk-bar-call,.js .amk-menu-toggle,.amk-nav-close,a.button,a.button2,a.button3,#mainframe a.book-button{border:2px solid ButtonText}.amk-links-list a::before{background:ButtonText}}
