/* ═══════════════ The Gift Desk — depth, social & live feeds ═══════════════
   One small stylesheet shared by every page. Uses the site's own palette. */
:root{--tgd-gold:#C9A84C;--tgd-gold-l:#E8C97A;--tgd-gold-d:#9C7A2E;--tgd-navy:#1A2744;--tgd-navy-d:#111B35;--tgd-cream:#FAF7F2}

/* ── Depth: cards lift and tilt toward the pointer (desktop only) ── */
.card,.coll-card,.srv-card,.tcard,.pr-card,.cap,.gm-item,.wa-card,.lv-tile,.yt-card,.cat3d{
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;transform-style:preserve-3d}
.tilt-on{box-shadow:0 2px 4px rgba(26,39,68,.06),0 12px 24px rgba(26,39,68,.10),0 30px 60px rgba(26,39,68,.14)!important;z-index:2;position:relative}
@media (hover:none){.tilt-on{transform:none!important}}

/* ── Social coins (footer + live section) ── */
.ft-social{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 14px}
.ft-social .sc-l{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-right:4px;width:100%}
.sc{--c:#333;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;
  font:700 15px/1 Jost,system-ui,sans-serif;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.38),rgba(255,255,255,0) 46%),var(--c);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.18),0 4px 10px rgba(0,0,0,.18);transition:transform .2s ease,box-shadow .2s ease}
.sc:hover{transform:translateY(-3px) rotate(-6deg);box-shadow:inset 0 -3px 0 rgba(0,0,0,.18),0 10px 20px rgba(0,0,0,.22)}
.sc svg{width:19px;height:19px;fill:currentColor}
.sc-ig{--c:radial-gradient(circle at 30% 110%,#fdf497 0,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
.sc-yt{--c:#FF0033}.sc-fb{--c:#1877F2}.sc-li{--c:#0A66C2}.sc-pin{--c:#E60023}.sc-x{--c:#111}.sc-th{--c:#111}.sc-wa{--c:#25D366}
.sc-g{--c:#fff;color:#4285F4}
.ft-cat{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.ft-cat a{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px solid rgba(201,168,76,.45);
  color:inherit;text-decoration:none;font-size:.8rem;font-weight:500;transition:background .2s}
.ft-cat a:hover{background:rgba(201,168,76,.14)}

/* ── Live section (homepage) ── */
.live{padding:96px 5% 90px;background:radial-gradient(1200px 500px at 50% -10%,rgba(201,168,76,.16),transparent 60%),linear-gradient(180deg,#FFFDF9,#F6EFE2);position:relative;overflow:hidden}
.live-in{max-width:1240px;margin:0 auto}
.live-head{text-align:center;margin-bottom:38px}
.live-k{font:600 .72rem/1 Jost,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--tgd-gold-d);margin-bottom:14px}
.live-head h2{font-family:'Cormorant Garamond','DM Serif Display',serif;font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.08;color:var(--tgd-navy);font-weight:600}
.live-head h2 em{font-style:italic;color:var(--tgd-gold-d)}
.live-handle{display:inline-block;margin-top:12px;color:var(--tgd-navy);font:500 .92rem Jost,sans-serif;text-decoration:none;border-bottom:1px solid rgba(201,168,76,.6)}
.lv-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;perspective:1200px}
.lv-tile{position:relative;display:block;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#EFE6D4;box-shadow:0 6px 18px rgba(26,39,68,.10)}
.lv-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.lv-tile:hover img{transform:scale(1.06)}
.lv-tile .lv-b{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center}
.lv-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(17,27,53,.45));opacity:0;transition:opacity .3s}
.lv-tile:hover::after{opacity:1}
.lv-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:26px 0 0}
.lv-btn{display:inline-flex;align-items:center;gap:9px;padding:13px 24px;border-radius:999px;text-decoration:none;font:600 .9rem Jost,sans-serif;color:#fff;
  background:linear-gradient(135deg,#d6249f,#fd5949 60%,#fdb24b);box-shadow:0 10px 24px rgba(214,36,159,.28);transition:transform .2s}
.lv-btn:hover{transform:translateY(-2px)}
.lv-btn.ghost{background:transparent;color:var(--tgd-navy);border:1px solid rgba(26,39,68,.25);box-shadow:none}
.lv-sub{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:64px 0 18px}
.lv-sub h3{font-family:'Cormorant Garamond','DM Serif Display',serif;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--tgd-navy);font-weight:600}
.lv-sub a{font:500 .86rem Jost,sans-serif;color:var(--tgd-gold-d);text-decoration:none;white-space:nowrap}
.yt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;perspective:1200px}
.yt-card{border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 6px 18px rgba(26,39,68,.10);cursor:pointer;border:0;padding:0;text-align:left;font:inherit;color:inherit}
.yt-media{position:relative;aspect-ratio:16/9;background:#111}
.yt-media img,.yt-media iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.yt-play{position:absolute;left:50%;top:50%;width:64px;height:44px;transform:translate(-50%,-50%);border-radius:12px;background:rgba(255,0,51,.92);
  display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.35);transition:transform .2s}
.yt-card:hover .yt-play{transform:translate(-50%,-50%) scale(1.08)}
.yt-play::before{content:"";border-left:16px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}
.yt-t{padding:13px 15px 15px;font:500 .9rem/1.4 Jost,sans-serif;color:var(--tgd-navy)}
.yt-grid.shorts{grid-template-columns:repeat(4,1fr)}
.yt-grid.shorts .yt-media{aspect-ratio:9/16;overflow:hidden}
.yt-grid.shorts .yt-media img{transform:scale(1.06)}
.yt-grid.shorts .yt-t{font-size:.84rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pin-strip{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;scrollbar-width:thin}
.pin-strip .lv-tile{flex:0 0 180px;aspect-ratio:3/4;scroll-snap-align:start}
.lv-every{margin-top:70px;text-align:center}
.lv-every p{font:600 .72rem/1 Jost,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--tgd-gold-d);margin-bottom:18px}
.lv-every .ft-social{justify-content:center;gap:14px}
.lv-every .sc{width:52px;height:52px;font-size:18px}
.lv-every .sc svg{width:23px;height:23px}
.lv-cats{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px;perspective:1000px}
.cat3d{display:flex;align-items:center;gap:16px;padding:22px 24px;border-radius:20px;text-decoration:none;color:#fff;
  background:linear-gradient(135deg,var(--tgd-navy),var(--tgd-navy-d));box-shadow:0 14px 30px rgba(17,27,53,.25);position:relative;overflow:hidden}
.cat3d::before{content:"";position:absolute;inset:-40% -10% auto auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(232,201,122,.35),transparent 70%)}
.cat3d.wa{background:linear-gradient(135deg,#128C7E,#075E54)}
.cat3d .ci{font-size:30px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}
.cat3d b{display:block;font:600 1.08rem Jost,sans-serif}
.cat3d span{display:block;font-size:.82rem;opacity:.8;margin-top:3px}
.cat3d .arr{margin-left:auto;font-size:1.3rem;opacity:.8}

/* ── Google reviews (homepage, appears only when connected) ── */
.grev{max-width:1240px;margin:0 auto 34px;display:none}
.grev.on{display:block}
.grev-top{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:22px;font:500 .95rem Jost,sans-serif;color:var(--tgd-navy)}
.grev-top b{font-size:1.6rem;font-family:'Cormorant Garamond',serif}
.grev-stars{color:#F4B400;letter-spacing:2px}
.grev-top a{color:var(--tgd-gold-d);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.5)}
.grev-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.grev-c{background:#fff;border-radius:16px;padding:18px;box-shadow:0 6px 18px rgba(26,39,68,.08);font:400 .9rem/1.55 Jost,sans-serif;color:#2C2416}
.grev-c .who{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-weight:600}
.grev-c .who img{width:32px;height:32px;border-radius:50%}
.grev-c .who small{display:block;font-weight:400;color:#8B7A60;font-size:.74rem}
.grev-g{font-size:.72rem;color:#8B7A60;text-align:right;margin-top:10px}

/* ── Share bar (blog posts) ── */
.share{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:36px 0 10px;padding-top:22px;border-top:1px solid rgba(201,168,76,.3)}
.share-l{font:600 .72rem Jost,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#8B7A60;margin-right:4px}
.share .sc{width:38px;height:38px;border:0;cursor:pointer}
.share .sc-copy{--c:#8B7A60}

/* ── 3D gift box (homepage hero) ── */
.gift3d{position:absolute;width:150px;height:150px;perspective:900px;pointer-events:none;z-index:3}
.g3-spin{position:absolute;inset:0;transform-style:preserve-3d;animation:g3spin 14s linear infinite,g3bob 5s ease-in-out infinite}
.g3-f{position:absolute;width:110px;height:110px;left:20px;top:30px;background:linear-gradient(145deg,#24365f,#111B35);
  box-shadow:inset 0 0 0 1px rgba(232,201,122,.25)}
.g3-f::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:18px;margin-left:-9px;background:linear-gradient(90deg,#9C7A2E,#F6E3AE 50%,#9C7A2E)}
.g3-fr{transform:translateZ(55px)}.g3-bk{transform:rotateY(180deg) translateZ(55px)}
.g3-l{transform:rotateY(-90deg) translateZ(55px)}.g3-r{transform:rotateY(90deg) translateZ(55px)}
.g3-bt{transform:rotateX(-90deg) translateZ(55px)}
.g3-tp{transform:rotateX(90deg) translateZ(55px)}
.g3-tp::after{content:"";position:absolute;top:50%;left:0;right:0;height:18px;margin-top:-9px;background:linear-gradient(180deg,#9C7A2E,#F6E3AE 50%,#9C7A2E)}
.g3-bow{position:absolute;left:50%;top:-4px;width:70px;height:34px;margin-left:-35px}
.g3-bow.b2{transform:rotateY(90deg)}
.g3-bow::before,.g3-bow::after{content:"";position:absolute;top:6px;width:34px;height:24px;border:6px solid #E8C97A;border-radius:50% 50% 50% 50%/60% 60% 40% 40%}
.g3-bow::before{left:-2px;transform:rotate(-24deg)}.g3-bow::after{right:-2px;transform:rotate(24deg)}
.g3-sh{position:absolute;left:30px;right:30px;bottom:-6px;height:16px;border-radius:50%;background:radial-gradient(rgba(17,27,53,.35),transparent 70%);animation:g3sh 5s ease-in-out infinite}
@keyframes g3spin{from{transform:rotateX(-18deg) rotateY(0)}to{transform:rotateX(-18deg) rotateY(360deg)}}
@keyframes g3bob{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes g3sh{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(.8);opacity:.6}}
.hero-form{position:relative}
.hero .gift3d{top:-78px;right:-34px}
@media (max-width:980px){.hero .gift3d{width:110px;height:110px;top:-64px;right:-8px;transform:scale(.72);transform-origin:top right}}

@media (max-width:900px){
  .lv-grid{grid-template-columns:repeat(3,1fr);gap:10px}
  #igGrid .lv-tile:nth-child(n+10){display:none}
  .yt-grid{grid-template-columns:1fr 1fr}
  .lv-cats{grid-template-columns:1fr}
}
@media (max-width:900px){.yt-grid.shorts{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){
  .live{padding:70px 5% 64px}
  #igGrid .lv-tile:nth-child(n+7){display:none}
  .yt-grid{grid-template-columns:1fr}
  .yt-grid.shorts{grid-template-columns:repeat(2,1fr);gap:12px}
  .pin-strip .lv-tile{flex-basis:140px}
  .lv-sub{margin-top:48px}
}
@media (prefers-reduced-motion:reduce){
  .g3-spin,.g3-sh{animation:none}
  .card,.coll-card,.srv-card,.tcard,.pr-card,.cap,.gm-item,.wa-card,.lv-tile,.yt-card,.cat3d,.sc,.lv-tile img{transition:none}
}

/* Wide tables scroll inside themselves on phones instead of pushing the page sideways */
table.spec,.prose table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
