/* ════════════════════════════════════════════════════════════════
   KINETIC THEME — shared styles for inner pages
   (reviews, thank-you, privacy, disclaimer) — matches index.html
   Anton display + Archivo body + Lora italic · coral→amber gradient
   ════════════════════════════════════════════════════════════════ */
:root{
  --ivory:#FBF7EF; --ivory2:#F4EDDF; --ink:#171310; --ink2:#473E33; --mut:#9A8E7E;
  --line:#E9DECA; --linedark:rgba(251,247,239,.14);
  --coral:#FF4D24; --amber:#FFAE00; --vio:#7C5CFF;
  --grad:linear-gradient(95deg,#FF4D24 10%,#FFAE00 90%);
  --maxw:1240px; --ease:cubic-bezier(.22,.75,.25,1); --spring:cubic-bezier(.34,1.56,.5,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:'Archivo',system-ui,sans-serif;
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
::selection{background:var(--coral);color:#fff}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}
h1,h2,h3{margin:0;font-family:'Anton',sans-serif;font-weight:400;letter-spacing:.01em;line-height:.98;text-transform:uppercase}
.si{font-family:'Lora',serif;font-style:italic;font-weight:500;letter-spacing:0;text-transform:none}
.gtx{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.caps{font-weight:700;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;border:none;border-radius:999px;padding:15px 28px;font-weight:700;
  font-size:15.5px;transition:transform .35s var(--spring),box-shadow .3s,background .3s,color .3s;position:relative;text-decoration:none}
.btn .ar{transition:transform .3s var(--spring)}
.btn:hover .ar{transform:translateX(5px)}
.btn-ink{background:var(--ink);color:var(--ivory)}
.btn-ink:hover{transform:translateY(-2px);box-shadow:0 18px 38px -16px rgba(23,19,16,.55)}
.btn-grad{background:var(--grad);color:#fff;box-shadow:0 16px 36px -14px rgba(255,77,36,.55)}
.btn-grad:hover{transform:translateY(-2px);box-shadow:0 24px 48px -16px rgba(255,77,36,.65)}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--ivory)}

/* nav */
.nav{position:fixed;top:0;inset-inline:0;z-index:200;background:rgba(251,247,239,.9);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);
  transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}
.nav-in{display:flex;align-items:center;justify-content:space-between;max-width:var(--maxw);margin:0 auto;padding:15px 28px}
.logo{font-weight:800;font-size:19px;letter-spacing:-.02em;display:flex;align-items:center;gap:9px}
.logo .dot{width:11px;height:11px;border-radius:50%;background:var(--grad);display:inline-block}
.logo .mk{width:30px;height:30px;border-radius:9px;display:block;flex:none}
.logo .tld{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nav-links{display:flex;align-items:center;gap:24px;font-weight:600;font-size:14.5px}
.nav-links a.nl{color:var(--ink2);position:relative}
.nav-links a.nl::after{content:"";position:absolute;left:0;bottom:-5px;height:2px;width:0;background:var(--grad);transition:width .3s var(--ease)}
.nav-links a.nl:hover::after{width:100%}
.nav .btn{padding:11px 22px;font-size:14px}

/* page header band */
.phead{position:relative;overflow:hidden;padding:150px 0 70px;background:var(--ivory)}
.phead .blob{position:absolute;border-radius:50%;filter:blur(70px);z-index:0}
.phead .b1{width:520px;height:520px;background:radial-gradient(circle,rgba(255,174,0,.34),transparent 65%);top:-180px;right:-120px}
.phead .b2{width:420px;height:420px;background:radial-gradient(circle,rgba(255,77,36,.22),transparent 65%);bottom:-180px;left:-140px}
.phead .wrap{position:relative;z-index:2}
.phead .eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.phead .eyebrow .rule{width:46px;height:2px;background:var(--grad)}
.phead h1{font-size:clamp(46px,8vw,104px);line-height:.92}
.phead .lede{font-size:clamp(16px,1.8vw,19px);color:var(--ink2);max-width:620px;margin:24px 0 0;font-weight:500}
.phead .lede b{color:var(--ink);font-weight:700}

/* footer */
.foot{background:var(--ink);color:#9C9183;padding:46px 0 30px;font-weight:500}
.foot-g{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid var(--linedark)}
.foot .logo{color:var(--ivory)}
.foot p{font-size:14px;margin:4px 0}
.foot a:hover{color:var(--ivory)}
.foot-links{display:flex;flex-direction:column;gap:9px;font-size:14.5px}
.foot-dis{padding-top:18px;font-size:12px;line-height:1.65;max-width:920px;color:#6E6457}
.foot-dis a{color:#9C9183;text-decoration:underline}

/* ── reviews ── */
.reviews-section{padding:64px 0 110px;background:var(--ivory)}
.reviews-toolbar{max-width:640px;margin:0 auto 42px}
#reviewSearch{width:100%;padding:16px 20px;border:1.5px solid var(--line);border-radius:999px;font:inherit;font-size:15.5px;
  font-weight:600;background:#fff;color:var(--ink);transition:border-color .25s,box-shadow .25s}
#reviewSearch::placeholder{color:var(--mut)}
#reviewSearch:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 4px rgba(255,77,36,.14)}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;margin:0;display:flex;flex-direction:column;
  box-shadow:0 14px 30px -26px rgba(23,19,16,.4);transition:transform .35s var(--spring),box-shadow .35s,border-color .3s}
.review:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 34px 60px -34px rgba(23,19,16,.3);border-color:rgba(255,77,36,.4)}
.review-stars{color:var(--amber);letter-spacing:3px;font-size:14px;margin-bottom:14px;order:1}
.review-text{font-size:15.5px;color:var(--ink2);font-weight:500;line-height:1.6;margin:0 0 18px;order:2;flex:1}
.review-head{display:flex;align-items:center;gap:12px;order:3}
.review-ava{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;
  background:var(--ink);flex:none}
.review:nth-child(3n) .review-ava{background:var(--grad)}
.review:nth-child(3n+1) .review-ava{background:var(--vio)}
.review-name{font-weight:700;font-size:14.5px;color:var(--ink);font-style:normal;margin:0}
.review-place{font-size:12.5px;color:var(--mut)}
.reviews-stats{display:flex;gap:40px;flex-wrap:wrap;margin:30px 0 0}
.rstat .n{font-family:'Anton',sans-serif;font-size:clamp(34px,4vw,52px);line-height:1}
.rstat .t{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin-top:6px;font-weight:600}

/* ── legal prose ── */
.legal{max-width:820px;margin:0 auto;padding:0 28px 100px}
.legal .updated{color:var(--mut);font-size:14px;margin:0 0 30px;font-weight:600}
.legal h2{font-family:'Archivo',sans-serif;text-transform:none;font-weight:800;font-size:clamp(20px,2.4vw,26px);
  letter-spacing:-.01em;margin:38px 0 10px;color:var(--ink)}
.legal h2 .no{color:var(--coral);font-family:'Anton';margin-right:10px}
.legal p,.legal li{color:var(--ink2);font-size:16px;line-height:1.75}
.legal strong{color:var(--ink);font-weight:700}
.legal ul{padding-left:22px}
.legal li{margin-bottom:7px}
.legal a{color:var(--coral);text-decoration:underline;text-underline-offset:2px;font-weight:600}
.callout{background:#fff;border:1.5px solid var(--line);border-left:4px solid var(--coral);border-radius:14px;
  padding:20px 24px;margin:24px 0;box-shadow:0 14px 30px -26px rgba(23,19,16,.4)}
.callout p{margin:0;color:var(--ink2)}
.callout strong{color:var(--ink)}

/* ── thank-you ── */
.ty{min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;
  background:var(--ink);color:var(--ivory);padding:120px 24px;position:relative;overflow:hidden}
.ty .blob{position:absolute;border-radius:50%;filter:blur(80px)}
.ty .b1{width:560px;height:560px;background:radial-gradient(circle,rgba(255,174,0,.3),transparent 65%);top:-180px;right:-120px}
.ty .b2{width:460px;height:460px;background:radial-gradient(circle,rgba(255,77,36,.26),transparent 65%);bottom:-180px;left:-120px}
.ty .in{position:relative;z-index:2;max-width:620px}
.ty .check{width:92px;height:92px;border-radius:50%;background:var(--grad);display:grid;place-items:center;font-size:46px;
  margin:0 auto 26px;box-shadow:0 22px 50px -16px rgba(255,77,36,.6);animation:pop .6s var(--spring)}
@keyframes pop{0%{transform:scale(0)}100%{transform:scale(1)}}
.ty h1{font-size:clamp(44px,8vw,92px);color:var(--ivory);line-height:.94}
.ty p{color:#cabfb0;font-size:18px;margin:22px 0 34px;font-weight:500}
.ty .alt{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* reveal */
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}

/* responsive */
@media (max-width:920px){.reviews-grid{grid-template-columns:1fr 1fr}.nav-links .nl{display:none}}
@media (max-width:620px){
  .phead{padding:120px 0 56px}
  .reviews-grid{grid-template-columns:1fr}
  .reviews-section{padding:44px 0 80px}
  .foot-g{flex-direction:column}
  .ty .alt .btn{width:100%;justify-content:center}
  .reviews-stats{gap:24px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1!important;transform:none!important}html{scroll-behavior:auto}}
