﻿/* Namm Massage вЂ” home page. Loaded on the front page only. */

/* Sections */
.namm-sec{padding-block:44px}
.namm-sec--tint{background:var(--namm-surface)}
.namm-note{font-size:.95rem;color:var(--namm-muted);border-left:1px solid var(--namm-accent);padding-left:14px;margin:24px 0}
.namm-note strong{color:var(--namm-ink);font-weight:500}
.namm-stars{display:inline-flex;gap:2px;color:var(--namm-accent);vertical-align:-3px}
.namm-stars .namm-i{width:16px;height:16px;fill:currentColor}

/* Hero: full photo, transparent header on top */
.namm-over-hero .namm-main{margin-top:calc(var(--namm-header-h) * -1)}
.namm-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#F6EFE6;background:#2B211B;overflow:hidden}
.namm-hero picture,.namm-hero picture img{position:absolute;inset:0 0 auto 0;width:100%;height:min(76svh,760px)}
.namm-hero picture img{object-fit:cover;object-position:50% 45%}
.namm-hero::after{content:"";position:absolute;inset:0 0 auto 0;height:min(76svh,760px);background:linear-gradient(180deg,rgba(43,33,27,.55) 0%,rgba(43,33,27,0) 24%,rgba(43,33,27,0) 52%,#2B211B 100%)}
.namm-hero__body{position:relative;z-index:1;padding-bottom:30px}
.namm-hero h1{font-size:clamp(2.3rem,9.5vw,3.6rem);margin-bottom:14px}
.namm-hero h1 em{color:#E6C9A3}
.namm-hero__lead{font-size:1rem;line-height:1.55;opacity:.94;margin-bottom:22px;max-width:560px}
.namm-hero__lead a{color:inherit}
.namm-hero .namm-btn{width:100%}
.namm-hero__facts{list-style:none;margin:18px 0 0;padding:0;display:flex;justify-content:space-between;gap:12px;font-size:.88rem}
.namm-hero__facts li{display:flex;align-items:center;gap:7px}
.namm-hero__facts .namm-i{color:#E6C9A3}
.namm-eyebrow--light{color:#E6C9A3}
.namm-btn--light{background:#F6EFE6;color:#2B211B;border-color:#F6EFE6}
.namm-btn--light:hover{background:#fff}
.namm-offer--light{color:#E6C9A3;margin-top:14px}
.namm-offer--light::before{background:#E6C9A3}

/* Header transparent over the hero until the page scrolls */
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-header{color:#F6EFE6}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-header::before{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-logo__sub{color:#E6C9A3}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-burger{color:#F6EFE6}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-header .namm-btn{background:transparent;border-color:#F6EFE6;color:#F6EFE6}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-branch-switch__label,
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-branch-switch__links a{color:#F6EFE6}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-branch-switch__label .namm-i{color:#E6C9A3}
.namm-over-hero:not(.namm-scrolled):not(.namm-menu-open) .namm-branch-switch__links a[aria-current="page"]{color:#fff}

/* Moods */
.namm-moods{list-style:none;margin:24px 0 0;padding:0}
.namm-moods a{display:flex;align-items:center;gap:16px;padding:16px 0;border-top:1px solid var(--namm-line);text-decoration:none}
.namm-moods li:last-child a{border-bottom:1px solid var(--namm-line)}
.namm-moods__i{width:26px;height:26px;color:var(--namm-accent)}
.namm-moods a>span{flex:1;display:flex;flex-direction:column;gap:2px}
.namm-moods__feel{font-size:.9rem;color:var(--namm-muted)}
.namm-moods strong{font:500 1.5rem/1.2 var(--namm-serif)}
.namm-moods__go{color:var(--namm-accent);transition:transform .2s}
.namm-moods a:hover .namm-moods__go{transform:translateX(4px)}

/* Treatment cards: 2 columns on mobile */
.namm-cards{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:1.5rem}
.namm-card a{display:flex;flex-direction:column;text-decoration:none;height:100%}
.namm-card__img{display:block;aspect-ratio:3/2;overflow:hidden;border-radius:var(--namm-radius);background:var(--namm-line);margin-bottom:12px}
.namm-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.namm-card a:hover .namm-card__img img{transform:scale(1.04)}
.namm-card__tag{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--namm-accent-ink);margin-bottom:4px}
.namm-card h3{font-size:1.25rem;line-height:1.15;margin:0 0 8px;min-height:2.3em}
.namm-card__price{font:500 1.2rem/1 var(--namm-serif);font-variant-numeric:lining-nums}
.namm-card__first{font-size:.8rem;color:var(--namm-accent-ink);margin-top:4px}
.namm-card__dur{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--namm-muted);margin-top:8px}
.namm-card__dur .namm-i{color:var(--namm-accent)}

/* Photo band with offer */
.namm-band{position:relative;min-height:34rem;display:flex;align-items:flex-end;color:#F6EFE6;overflow:hidden}
.namm-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.namm-band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,33,27,.1) 0%,rgba(43,33,27,.85) 100%)}
.namm-band__body{position:relative;z-index:1;padding-bottom:36px}
.namm-band h2 em{color:#E6C9A3}

/* Offers accordion extras */
.namm-acc summary>span{display:flex;flex-direction:column;gap:2px}
.namm-acc summary small{font:400 .9rem/1.4 var(--namm-sans);color:var(--namm-muted)}
.namm-acc__big{font:500 1.9rem/1 var(--namm-serif);color:var(--namm-accent);font-variant-numeric:lining-nums}

/* Horizontal scroll reels (interior photos, reviews) */
.namm-reel{--namm-reel-pad:var(--namm-gutter);scroll-padding-inline:var(--namm-reel-pad);list-style:none;margin:28px 0 0;padding:0 var(--namm-reel-pad);display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.namm-reel::-webkit-scrollbar{display:none}
.namm-reel li{flex:0 0 78%;scroll-snap-align:start;position:relative}
.namm-reel li>img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--namm-radius)}
.namm-reel li>img+span{display:block;margin-top:10px;font:500 1.15rem/1.2 var(--namm-serif)}
.namm-review{background:var(--namm-surface);border-radius:var(--namm-radius);padding:24px 22px}
.namm-review p{font:400 1.32rem/1.45 var(--namm-serif);margin:14px 0}
.namm-review__by{font-size:.82rem;color:var(--namm-muted)}
.namm-reel--reviews li{flex-basis:84%}
.namm-reel--reviews .namm-review{display:flex;flex-direction:column}

/* Location */
.namm-near{display:grid;gap:28px;margin:28px 0}
.namm-near h3{display:flex;align-items:center;gap:10px;font-size:1.3rem}
.namm-near h3 .namm-i{color:var(--namm-accent)}
.namm-near ul{list-style:none;margin:0;padding:0}
.namm-near li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--namm-line)}
.namm-near b{font-weight:500;color:var(--namm-accent-ink);white-space:nowrap}

/* Lists with check icons */
.namm-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}
.namm-list li{display:flex;gap:10px;align-items:flex-start;font-size:.96rem}
.namm-list .namm-i{color:var(--namm-accent);margin-top:4px}

/* Gift + final CTA */
.namm-gift{padding:64px 0;text-align:center;background:var(--namm-bg);border-top:1px solid var(--namm-line);border-bottom:1px solid var(--namm-line)}
.namm-gift__i{width:36px;height:36px;color:var(--namm-accent);margin:0 auto 14px}
.namm-gift p{max-width:520px;margin:0 auto 24px;color:var(--namm-muted)}
.namm-gift--dark{background:var(--namm-ink);color:#F6EFE6;border:0;margin-top:56px}
.namm-gift--dark p{color:rgba(246,239,230,.8)}

.namm-footer{margin-top:0}

@media (min-width:900px){
	.namm-sec{padding-block:96px}
	/* Desktop: full-bleed landscape photo, colour-graded to the palette; text on a soft left shade; the bottom fades into the cream page (no hard dark-to-light edge). */
	.namm-hero{display:block;min-height:max(100svh,660px);background:var(--namm-ink)}
	.namm-hero picture{display:block;position:absolute;inset:0;width:auto;height:auto}
	.namm-hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 40%;filter:saturate(.82) sepia(.14) brightness(.92) contrast(1.03)}
	.namm-hero::after{inset:0;height:auto;background:linear-gradient(90deg,rgba(43,33,27,.84) 0%,rgba(43,33,27,.58) 34%,rgba(43,33,27,.1) 62%,rgba(43,33,27,0) 100%),linear-gradient(180deg,rgba(43,33,27,.45) 0%,rgba(43,33,27,0) 18%,rgba(43,33,27,0) 70%,var(--namm-bg) 100%)}
	.namm-hero__body{position:relative;z-index:1;max-width:none;margin:0;width:auto;min-height:max(100svh,660px);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:max(7.5rem,17svh) 3.5rem 0 max(var(--namm-gutter),calc((100vw - var(--namm-max))/2 + var(--namm-gutter)))}
	.namm-hero__body>*{max-width:32rem}
	.namm-hero h1{font-size:clamp(3rem,4.2vw,4rem)}
	.namm-hero .namm-btn{width:auto}
	.namm-hero__facts{justify-content:flex-start;gap:28px}
	.namm-cards{grid-template-columns:repeat(3,1fr);gap:3rem 1.75rem}
	.namm-card__img{aspect-ratio:1/1}
	.namm-card h3{font-size:1.5rem;min-height:2.3em}
	.namm-card__price{font-size:1.4rem}
	.namm-card__first,.namm-card__dur{font-size:.9rem}
	.namm-moods{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
	.namm-reel{--namm-reel-pad:max(var(--namm-gutter),calc((100vw - var(--namm-max))/2 + var(--namm-gutter)))}
	.namm-reel li{flex-basis:30%}
	.namm-reel--reviews li{flex-basis:30%}
	.namm-near{grid-template-columns:1fr 1fr}
	.namm-band{min-height:560px}
	.namm-band img{object-position:50% 40%}
}

/* Card without a photo yet: quiet placeholder tile */
.namm-card__img--empty{display:grid;place-items:center;background:var(--namm-bg);border:1px solid var(--namm-line)}
.namm-card__img--empty .namm-i{width:44px;height:44px;color:var(--namm-accent)}
.namm-sec .namm-acc:last-of-type{margin-bottom:28px}
.namm-band picture{position:absolute;inset:0}

/* CTA tile at the end of the massage grid */
.namm-card--cta a{justify-content:center;align-items:flex-start;gap:8px;padding:22px 18px;border:1px solid var(--namm-line);border-radius:var(--namm-radius);background:var(--namm-bg);min-height:100%}
.namm-card--cta .namm-i{width:30px;height:30px;color:var(--namm-accent)}
.namm-card--cta h3{min-height:0;margin:6px 0 0}
.namm-card--cta span{color:var(--namm-muted);font-size:.92rem;line-height:1.4}
.namm-card--cta .namm-card__go{display:inline-flex;align-items:center;gap:8px;margin-top:8px;color:var(--namm-ink);font-weight:500}
.namm-card--cta .namm-card__go .namm-i{width:16px;height:16px;margin:0;color:var(--namm-accent)}

/* Desktop: interior photos as a calm grid, reviews as columns (no hidden scrolling) */
@media (min-width:900px){
	.namm-reel--space,.namm-reel--reviews{display:grid;gap:20px;overflow:visible;max-width:var(--namm-max);margin-inline:auto;padding-inline:var(--namm-gutter);scroll-snap-type:none}
	.namm-reel--space{grid-template-columns:repeat(6,1fr)}
	.namm-reel--space li{flex:none}
	.namm-reel--space li:nth-child(-n+3){grid-column:span 2}
	.namm-reel--space li:nth-child(n+4){grid-column:span 3}
	.namm-reel--space li:nth-child(n+4)>img{aspect-ratio:3/2}
	.namm-reel--reviews{grid-template-columns:repeat(3,1fr)}
	.namm-reel--reviews li{flex:none}
}

@media (min-width:900px){
	/* last row: Signature Chair + a roomy CTA panel spanning the other two columns */
	.namm-card--cta{grid-column:span 2;align-self:stretch}
	.namm-card--cta a{justify-content:center;gap:.9rem;padding:3rem 3.5rem}
	.namm-card--cta .namm-i:first-child{width:2.6rem;height:2.6rem}
	.namm-card--cta h3{font-size:2.3rem;min-height:0;margin:.3rem 0 0}
	.namm-card--cta span:not(.namm-card__go){font-size:1.1rem;max-width:30rem}
	.namm-card--cta .namm-card__go{margin-top:.8rem;font-size:1.05rem}
}

/* Visit card with arrival photo */
.namm-visit{background:var(--namm-bg);border-radius:var(--namm-radius);overflow:hidden}
.namm-visit__photo{margin:0;aspect-ratio:4/5;overflow:hidden}
.namm-visit__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%!important}
.namm-visit__info{padding:24px 22px}
.namm-visit .namm-facts{margin:16px 0 22px}
.namm-visit .namm-facts li{align-items:flex-start}
.namm-visit .namm-i{margin-top:3px}
@media (min-width:900px){
	.namm-visit{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
	.namm-visit__photo{aspect-ratio:auto;min-height:100%}
	.namm-visit__info{padding:44px 48px;align-self:center}
}


/* Treatment card = one panel: lighter surface, photo flush to the top, padded text, shadow and hover lift on the whole card */
.namm-cards{--namm-card:#FBF7F1}
.namm-card a{background:var(--namm-card);border-radius:var(--namm-radius);overflow:hidden;box-shadow:0 1px 2px rgba(43,33,27,.07),0 12px 26px -12px rgba(43,33,27,.28);transition:box-shadow .3s,transform .3s}
.namm-card__img{margin:0;border-radius:0;background:var(--namm-bg)}
.namm-card__body{display:flex;flex-direction:column;flex:1;padding:1rem 1.1rem 1.2rem}
.namm-card__img--empty{border:0;background:var(--namm-bg)}
.namm-card--cta a{border:1px solid var(--namm-line);background:var(--namm-card)}
@media (hover:hover){
	.namm-card a:hover{transform:translateY(-5px);box-shadow:0 2px 4px rgba(43,33,27,.08),0 24px 40px -16px rgba(43,33,27,.38)}
}
@media (min-width:900px){
	.namm-card__body{padding:1.25rem 1.5rem 1.5rem}
}/* price block sits at the bottom of every card so prices line up across a row */
.namm-card h3{min-height:0;margin-bottom:.9rem}
.namm-card__price{margin-top:auto}
@media (min-width:900px){.namm-card h3{min-height:0}}

/* Phones: one card per row (photo 3:2 on top). Tablets: two columns. */
@media (min-width:600px){
	.namm-cards{grid-template-columns:1fr 1fr;gap:2rem 1.25rem}
	.namm-card__img{aspect-ratio:4/3}
}
.namm-card h3{font-size:1.6rem}
.namm-card__price{font-size:1.35rem}
@media (min-width:900px){.namm-cards{grid-template-columns:repeat(3,1fr);gap:3rem 1.75rem}.namm-card__img{aspect-ratio:1/1}}

/* Collapsed card list on phones/tablets (only when JS is available; desktop always shows all) */
.namm-more-wrap{display:none;margin:1.75rem 0 0;text-align:center}
@media (max-width:899px){
	.namm-js .namm-cards:not(.is-open) .namm-card--more{display:none}
	.namm-js .namm-more-wrap:not([hidden]){display:block}
}

/* Offer band (desktop): sharp 2400px photo, graded to the palette */
@media (min-width:900px){.namm-band img{object-position:50% 38%;filter:saturate(.85) sepia(.1) brightness(.95)}}
@media (min-width:900px){
	/* text sits between the two people (host left, guest right), centred in that gap */
	.namm-band__body{max-width:none;width:36rem;margin:0 0 0 max(var(--namm-gutter),calc(41vw - 18rem));padding:0 0 3.2rem;text-align:center}
	.namm-band::after{background:linear-gradient(180deg,rgba(43,33,27,.1) 0%,rgba(43,33,27,.4) 45%,rgba(43,33,27,.88) 100%)}
}

/* One-line description under the card title (kept from the live site) */
.namm-card__desc{display:block;font-size:.95rem;line-height:1.45;color:var(--namm-muted);margin:-.3rem 0 1rem}
.namm-card h3{margin-bottom:.9rem}

/* Price hierarchy: the first-visit price (what most guests pay) leads; regular price is the quiet second line */
.namm-card__price{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .7rem}
.namm-card__badge{font:500 .68rem/1 var(--namm-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--namm-accent-ink);border:1px solid var(--namm-accent);border-radius:999px;padding:.38rem .6rem .34rem;white-space:nowrap}
.namm-card__first{color:var(--namm-muted)!important;font-size:.88rem!important;margin-top:.35rem}

/* price block: "60 min from 675 ฿", then badge + regular price on one wrapping row */
.namm-card__price{display:block}
.namm-card__row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .8rem;margin-top:.55rem}
.namm-card__first{margin-top:0!important}

/* Booking policy under the final CTA */
.namm-policy{list-style:none;margin:1.6rem auto 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.8rem;font-size:.95rem;color:rgba(246,239,230,.85)}
.namm-policy li{display:flex;align-items:center;gap:.5rem}
.namm-policy .namm-i{color:#E6C9A3}
.namm-policy__link{margin:.9rem 0 0!important}
.namm-policy__link a{color:#E6C9A3;text-decoration:underline;text-underline-offset:4px;font-size:.92rem}
.namm-policy__link a:hover{color:#F6EFE6}
.namm-policy__link{margin:.9rem auto 0!important;max-width:none!important}
.namm-policy li{text-align:left;align-items:flex-start}
.namm-policy .namm-i{margin-top:.28em;flex:none}
@media (max-width:599px){.namm-policy{flex-direction:column;align-items:center;max-width:21rem;gap:.7rem}}

@media (min-width:900px){
	/* 8 photos: 3 portrait / 2 wide / 3 landscape */
	.namm-reel--space li:nth-child(n+6){grid-column:span 2}
	.namm-reel--space li:nth-child(n+6)>img{aspect-ratio:3/2}
}

/* Gallery lightbox */
.namm-zoom{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:var(--namm-radius);overflow:hidden;font:inherit;color:inherit}
.namm-zoom img{width:100%;aspect-ratio:inherit;transition:transform .5s}
.namm-reel li>.namm-zoom img{aspect-ratio:4/5}
@media (min-width:900px){
	.namm-reel--space li:nth-child(n+4)>.namm-zoom img{aspect-ratio:3/2}
	.namm-reel--space li:nth-child(n+6)>.namm-zoom img{aspect-ratio:3/2}
}
@media (hover:hover){.namm-zoom:hover img{transform:scale(1.04)}}
.namm-lb{border:0;padding:0;margin:0;max-width:none;max-height:none;width:100vw;height:100dvh;background:rgba(24,18,14,.94);color:#F6EFE6;overflow:hidden}
.namm-lb[open]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
.namm-lb::backdrop{background:rgba(24,18,14,.94)}
.namm-lb figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:3.5rem 0 1rem;min-width:0}
.namm-lb img{max-width:100%;max-height:calc(100dvh - 8rem);width:auto;height:auto;object-fit:contain;border-radius:.6rem}
.namm-lb figcaption{margin-top:.9rem;font:500 1.15rem/1.3 var(--namm-serif);text-align:center}
.namm-lb__close,.namm-lb__nav{background:rgba(246,239,230,.1);border:0;color:#F6EFE6;border-radius:999px;width:2.9rem;height:2.9rem;display:grid;place-items:center;cursor:pointer;transition:background .2s}
.namm-lb__close:hover,.namm-lb__nav:hover{background:rgba(246,239,230,.22)}
.namm-lb__close{position:absolute;top:1rem;right:1rem;z-index:2}
.namm-lb__nav{margin:0 1rem}
.namm-lb__prev .namm-i{transform:rotate(90deg)}
.namm-lb__next .namm-i{transform:rotate(-90deg)}
.namm-lb-open{overflow:hidden}
@media (max-width:899px){
	.namm-lb[open]{grid-template-columns:1fr}
	.namm-lb__nav{position:absolute;bottom:1rem;z-index:2;margin:0}
	.namm-lb__prev{left:1rem}.namm-lb__next{right:1rem}
	.namm-lb figure{padding:3.5rem 0 5rem}
	.namm-lb img{max-height:calc(100dvh - 11rem);border-radius:0;width:100%}
}

/* Lightbox buttons wrap the photos now: keep them cropped (not stretched) */
.namm-zoom img{display:block;width:100%;height:100%;object-fit:cover}
.namm-reel--space li>.namm-zoom{aspect-ratio:4/5}
.namm-reel--space li>.namm-zoom img{aspect-ratio:auto}
@media (min-width:900px){
	.namm-reel--space li:nth-child(n+4)>.namm-zoom{aspect-ratio:3/2}
	.namm-reel--space li:nth-child(n+4)>.namm-zoom img{aspect-ratio:auto}
}
.namm-reel li>.namm-zoom+span{display:block;margin-top:10px;font:500 1.15rem/1.2 var(--namm-serif)}

/* Offer band (desktop): text block on the left, the guest in the photo on the right */
@media (min-width:900px){
	.namm-band__body{width:28rem;max-width:none;margin:0 0 0 max(var(--namm-gutter),calc((100vw - var(--namm-max))/2 + var(--namm-gutter)));text-align:left;padding:0 0 3.2rem}
	.namm-band img{object-position:60% 50%}
	.namm-band::after{background:linear-gradient(90deg,rgba(43,33,27,.86) 0%,rgba(43,33,27,.55) 38%,rgba(43,33,27,0) 62%),linear-gradient(180deg,rgba(43,33,27,0) 40%,rgba(43,33,27,.5) 100%)}
}

.namm-visit__new{display:flex;gap:.6rem;align-items:flex-start;margin:1.2rem 0 0;padding-top:1rem;border-top:1px solid var(--namm-line);font-size:.95rem}
.namm-visit__new .namm-i{color:var(--namm-accent);margin-top:.25em;flex:none}
.namm-visit__new a{color:var(--namm-accent-ink);white-space:nowrap}

/* Review links */
.namm-rvlinks{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .6rem;margin-top:1rem}
.namm-rvlinks>span{font-size:.85rem;color:var(--namm-muted);margin-right:.2rem}
.namm-rvlinks--head{margin-top:1.1rem}
.fb-public{margin:.6rem 0 0;color:var(--namm-muted);font-size:.95rem}

.namm-visit__btns{display:flex;flex-wrap:wrap;gap:.7rem}
.namm-visit__btns .namm-btn{flex:1 1 auto}
@media (min-width:900px){.namm-visit__btns .namm-btn{flex:0 0 auto}}

/* ---------- Gift certificate builder ---------- */
.namm-gift--builder{text-align:left;padding:3.5rem 0}
.gf{display:grid;gap:2rem}
.gf-intro .namm-gift__i{margin:0 0 .8rem;display:block}
.gf-intro h2{margin-bottom:.5rem}
.gf-intro p{margin:0;max-width:34rem}

/* the card */
.gf-card{perspective:900px}
.gf-card__in{position:relative;display:flex;flex-direction:column;gap:.35rem;min-height:15.5rem;padding:1.6rem 1.5rem 1.4rem;border-radius:1.1rem;color:#F6EFE6;background:radial-gradient(120% 120% at 100% 0%,rgba(201,163,106,.35) 0%,rgba(201,163,106,0) 55%),linear-gradient(145deg,#3A2D25 0%,#2B211B 60%,#241B16 100%);box-shadow:0 30px 60px -24px rgba(0,0,0,.6),inset 0 0 0 1px rgba(230,201,163,.35)}
.gf-card__in::before{content:"";position:absolute;inset:.55rem;border:1px solid rgba(230,201,163,.35);border-radius:.75rem;pointer-events:none}
.gf-card__brand{font:600 1.35rem/1 var(--namm-serif);letter-spacing:.2em}
.gf-card__brand small{display:block;font:400 .5rem/1 var(--namm-sans);letter-spacing:.42em;color:#E6C9A3;margin-top:.3rem}
.gf-card__t{margin-top:.9rem;font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:#E6C9A3}
.gf-card__s{font:italic 400 1rem/1.3 var(--namm-serif);opacity:.85}
.gf-card__val{margin-top:.5rem;font:600 2.6rem/1.05 var(--namm-serif);font-variant-numeric:lining-nums;color:#fff;word-break:break-word}
.gf-card__sub{font-size:.85rem;opacity:.8}
.gf-card__msg{margin-top:.6rem;font:italic 400 1.05rem/1.4 var(--namm-serif);color:#F1DFC3;word-break:break-word}
.gf-card__msg:empty{display:none}
.gf-card__who{margin-top:auto;padding-top:.8rem;display:flex;flex-wrap:wrap;gap:.2rem 1.2rem;font-size:.82rem;letter-spacing:.06em;color:#E6C9A3}
.gf-card__who span:empty{display:none}

/* the form */
.gf-form{background:#FBF7F1;border-radius:var(--namm-radius);padding:1.4rem 1.3rem 1.5rem;border:1px solid rgba(217,199,178,.7);box-shadow:0 1px 2px rgba(43,33,27,.07),0 16px 34px -16px rgba(43,33,27,.3);color:var(--namm-ink)}
.gf-form fieldset{border:0;margin:0;padding:0}
.gf-form legend,.gf-l{display:block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--namm-accent-ink);font-weight:500;padding:0}
.gf-l{margin-top:1rem}
.gf-chips{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin-top:.6rem}
.gf-chip{cursor:pointer;position:relative}
.gf-chip input{position:absolute;opacity:0;inset:0}
.gf-chip span{display:block;text-align:center;padding:.75rem .5rem;border:1px solid var(--namm-line);border-radius:12px;background:var(--namm-bg);font:600 1.2rem/1.1 var(--namm-serif);font-variant-numeric:lining-nums;letter-spacing:0;text-transform:none;transition:border-color .2s,background .2s,box-shadow .2s}
.gf-chip input:checked+span{border-color:var(--namm-accent);background:#fff;box-shadow:0 0 0 1px var(--namm-accent)}
.gf-chip input:focus-visible+span{outline:2px solid var(--namm-accent);outline-offset:2px}
.gf-form select,.gf-form input[type=text],.gf-form textarea{display:block;width:100%;margin-top:.4rem;padding:.8rem .9rem;border:1px solid var(--namm-line);border-radius:10px;background:var(--namm-bg);color:var(--namm-ink);font:400 1rem/1.4 var(--namm-sans);letter-spacing:0;text-transform:none}
.gf-form textarea{resize:vertical;min-height:5.5rem}
.gf-form select:focus,.gf-form input:focus,.gf-form textarea:focus{outline:2px solid var(--namm-accent);outline-offset:1px;background:#fff}
.gf-row{display:grid;gap:0 1rem}
.gf-form .namm-btn{width:100%;margin-top:1.3rem}
.gf-form .gf-note{max-width:none;margin:1.3rem 0 0;font-size:.85rem;line-height:1.5;color:var(--namm-muted)}

@media (min-width:900px){
	.gf{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:4rem;align-items:start}
	.gf-intro{grid-column:1/-1;max-width:38rem}
	.gf-card{position:sticky;top:calc(var(--namm-header-h) + 2rem)}
	.gf-card__in{min-height:19rem;padding:2rem 2rem 1.7rem}
	.gf-card__val{font-size:3.4rem}
	.gf-chips{grid-template-columns:repeat(4,1fr)}
	.gf-row{grid-template-columns:1fr 1fr}
}

/* ---------- Shorter home page on phones ---------- */
.namm-near details{border-bottom:1px solid var(--namm-line)}
.namm-near summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;padding:.2rem 0 .6rem}
.namm-near summary::-webkit-details-marker{display:none}
.namm-near summary h3{margin:0}
.namm-near summary>.namm-i{width:20px;height:20px;color:var(--namm-accent);transition:transform .2s}
.namm-near details[open]>summary>.namm-i{transform:rotate(180deg)}
.namm-near details[open]{padding-bottom:.4rem}
.gf-more>summary{list-style:none;width:100%;justify-content:center;cursor:pointer}
.gf-more>summary::-webkit-details-marker{display:none}
.gf-more[open]>summary{display:none}
@media (min-width:900px){.namm-near summary{pointer-events:none;cursor:default}.namm-near summary>.namm-i{display:none}.gf-more>summary{display:none}}
.namm-hero .namm-eyebrow{letter-spacing:.13em;font-size:.7rem}
@media (min-width:600px){.namm-hero .namm-eyebrow{letter-spacing:.22em;font-size:.74rem}}
/* the announcement strip takes the top of the screen: the hero is that much shorter so its last line stays in view */
@media (max-width:899.98px){body:has(.namm-announce) .namm-hero{min-height:calc(100svh - 2.3rem)}}

.prs-home .prs{margin-top:0}
.prs-home .prs h2{font-size:clamp(1.9rem,6.5vw,2.8rem);margin-bottom:.2rem}
.prs-home .namm-eyebrow{margin-bottom:.6rem}

/* real headings inside the accordions look like the old plain text */
.namm-acc summary>.namm-acc__t{display:flex;flex-direction:column;gap:2px;margin:0;font:inherit;letter-spacing:inherit;text-transform:none;color:inherit}
.namm-acc summary>.namm-acc__t .namm-acc__big{display:inline}
