/* Warm metallic gold inspired by Zen Nail Lounge, confined to fine rules.
   Cards, image frames and badges retain the approved Lakeway styling. */
:root{
  --gold:#AC8152;
  --gold-line:rgba(172,129,82,.42);
  --gold-on-dark:rgba(221,185,127,.62);
  --gold-rule:linear-gradient(90deg,#AC8152 0%,#CB9B51 22%,#F6E27A 45%,#FFE1C8 50%,#F6E27A 55%,#CB9B51 78%,#AC8152 100%);
  --gold-rule-soft:linear-gradient(90deg,rgba(172,129,82,.62) 0%,rgba(203,155,81,.64) 22%,rgba(246,226,122,.68) 45%,rgba(255,225,200,.76) 50%,rgba(246,226,122,.68) 55%,rgba(203,155,81,.64) 78%,rgba(172,129,82,.62) 100%);
}

/* Give the pictured top navigation a little more presence. */
.hdr .wrap{height:96px}
.hdr .brand{gap:14px;flex-shrink:0}
.hdr .mark{width:40px;height:48px}
.hdr .brand-txt b{font-size:17px}
.hdr .brand-txt span{font-size:10px;margin-top:7px}
.hdr .nav a{font-size:14px}

/* Frame the entrance without changing its content or image overlays. */
.hdr{border-bottom-color:var(--gold-line);border-image:var(--gold-rule-soft) 1}
.nav a::after{height:2px;background:var(--gold-rule)}
.hero::before{content:"";position:absolute;inset:18px;z-index:1;border:1px solid var(--gold-on-dark);border-image:var(--gold-rule-soft) 1;pointer-events:none}
.phero{border-bottom-color:var(--gold-line)}

/* Fine rules sit within existing heading gaps, so no extra vertical space is added. */
.sec-head h2,.phero h1{position:relative}
.sec-head h2::after,.phero h1::after{content:"";position:absolute;left:0;bottom:-10px;width:76px;height:1px;background:var(--gold-rule);pointer-events:none}
.sec-head.center h2::after{left:50%;transform:translateX(-50%)}

/* Gold belongs to dividers, not to outlines around content boxes or photos. */
.ov,.rituals,.hl-list,.price-list,.diff article{border-top-color:var(--gold)}
.ov article+article,.ritual,.hl-row,.price-row,details,details:last-of-type,th,td{border-color:var(--gold-line)}
/* These existing straight separators carry the gradient, never a filled panel. */
.phero,.ov,.rituals,.ritual,.hl-list,.hl-row,.price-list,.price-row,.diff article,details,th,td,.cta-band,footer .fbot,footer .fmap{border-image:var(--gold-rule-soft) 1}
.pull,.story blockquote{border-left-color:var(--gold)}
.link-arrow{border-bottom-color:var(--gold-line);border-image:var(--gold-rule-soft) 1}

/* Repeated gold rules connect the booking, gift and footer areas. */
.cta-band{border-color:var(--gold-line)}
.gift,footer{border-top:1px solid var(--gold-on-dark);border-image:var(--gold-rule-soft) 1}
footer .fbot,footer .fmap{border-color:rgba(220,189,134,.35)}
footer h4{position:relative}
footer h4::after{content:"";position:absolute;left:0;bottom:-8px;width:30px;height:1px;background:var(--gold-rule);pointer-events:none}
.mbar{border-top-color:var(--gold-line);border-image:var(--gold-rule-soft) 1}

/* Fine bevels give gold rules a raised metal edge without filling any surfaces. */
.nav a::after,.sec-head h2::after,.phero h1::after,footer h4::after{
  height:2px;
  box-shadow:inset 0 1px 0 rgba(255,248,220,.42),0 1px 0 rgba(117,83,53,.3),0 3px 4px rgba(58,46,37,.1);
}
.hero::before{box-shadow:inset 0 1px 0 rgba(255,240,204,.26),0 1px 0 rgba(74,51,29,.32)}
.ov,.rituals,.hl-list,.price-list,.diff article{box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.phero,.ritual:not(.feature),.hl-row,.price-row,details{box-shadow:0 1px 0 rgba(255,255,255,.66)}
.cta-band{box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 1px 0 rgba(255,255,255,.66)}
footer .fbot,footer .fmap{box-shadow:inset 0 1px 0 rgba(255,240,204,.12)}

/* Button reference: softly squared corners, a metal-gradient face, a bright rim,
   and a quieter outlined secondary action. Gold fills are confined to buttons. */
.btn{border-radius:16px}
.btn-sm{border-radius:13px}
.btn:is(.btn-book,[data-book]){
  color:var(--cream-on-dark);
  border-color:transparent;
  border-width:2px;
  background:linear-gradient(180deg,rgba(255,233,187,.12),rgba(255,233,187,0) 42%) padding-box,linear-gradient(112deg,#805D2C 0%,#88612B 24%,#735639 50%,#48382D 78%,#3A2E25 100%) padding-box,linear-gradient(120deg,#B6833F 0%,#E9CB8E 28%,#FFF0CC 52%,#D2AB64 73%,#8E6635 100%) border-box;
  -webkit-text-stroke:0;
  paint-order:stroke fill;
  text-shadow:0 1px 2px rgba(24,17,12,.45);
  box-shadow:inset 0 1px 0 rgba(255,233,192,.2),inset 0 -2px 3px rgba(28,19,12,.18),0 2px 0 #98733F,0 8px 18px -10px rgba(58,46,37,.38);
  transition:transform .6s var(--ease),box-shadow .5s var(--ease),border-color .4s;
}
.btn:is(.btn-book,[data-book])::before{
  content:"";position:absolute;inset:-1px;z-index:-1;pointer-events:none;
  background:radial-gradient(140px circle at var(--mx,50%) var(--my,50%),rgba(255,236,196,.06),transparent 70%);
  opacity:0;transition:opacity .5s var(--ease);
}
.btn:is(.btn-book,[data-book]):not([aria-disabled="true"]):is(:hover,:focus-visible){
  box-shadow:inset 0 1px 0 rgba(255,233,192,.32),inset 0 -2px 3px rgba(28,19,12,.15),0 2px 0 #B68C4D,0 0 0 4px rgba(184,148,99,.12),0 16px 30px -18px rgba(58,46,37,.5);
}
.btn:is(.btn-book,[data-book]):not([aria-disabled="true"]):is(:hover,:focus-visible)::before{opacity:1}
.btn:is(.btn-book,[data-book]):not([aria-disabled="true"]):active{
  box-shadow:inset 0 2px 4px rgba(28,19,12,.25),0 1px 0 #98733F,0 5px 10px -8px rgba(58,46,37,.3);
}
.btn:is(.btn-ghost,.btn-light):not([data-book]){
  color:var(--espresso);
  border-color:rgba(172,129,82,.56);
  background:rgba(58,46,37,.025);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 2px 0 rgba(172,129,82,.14);
}
.btn:is(.btn-ghost,.btn-light):not([data-book]):not([aria-disabled="true"]):is(:hover,:focus-visible){
  border-color:#AC8152;
  background:rgba(172,129,82,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 2px 0 rgba(172,129,82,.24),0 7px 15px -12px rgba(58,46,37,.25);
}
:is(.hero,.gift,.feature) .btn:is(.btn-ghost,.btn-light):not([data-book]){
  color:var(--cream-on-dark);
  background:rgba(32,23,17,.34);
  border-color:rgba(222,186,126,.62);
  box-shadow:inset 0 1px 0 rgba(255,233,192,.08),0 2px 0 rgba(117,83,53,.3);
}
:is(.hero,.gift,.feature) .btn:is(.btn-ghost,.btn-light):not([data-book]):not([aria-disabled="true"]):is(:hover,:focus-visible){
  background:rgba(32,23,17,.52);
  border-color:#E4C48A;
}
.btn[aria-disabled="true"]{box-shadow:none;filter:saturate(.55)}
.btn[aria-disabled="true"]::before{opacity:0}
.mbar .btn{padding-inline:14px;border-radius:14px}

@media(prefers-reduced-motion:reduce){
  .btn:is(.btn-ghost,.btn-light):hover{transform:none}
}

@media(max-width:960px){
  .hdr .wrap{height:86px}
  .hdr .mark{width:38px;height:45px}
  .hdr .brand-txt b{font-size:16px}
  .hdr .brand-txt span{font-size:9.5px}
}
@media(max-width:640px){
  .hero::before{inset:10px}
  .sec-head h2::after,.phero h1::after{width:54px}
}
