/* Connserva v2 — decorative fan parody. Vanilla CSS, no external requests. */
@font-face{font-family:"Cormorant";src:url("cormorant.woff2") format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Manrope";src:url("manrope.woff2") format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Caveat";src:url("caveat.woff2") format("woff2");font-weight:400 700;font-display:swap}

@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
@property --shine{syntax:"<percentage>";inherits:false;initial-value:0%}

:root{
  --gold:#e3c27a;--gold-hi:#fff2c4;--gold-soft:color-mix(in oklab,var(--gold) 35%,transparent);
  --cyan:#5fe3ff;--text:#e9ecf8;--muted:#a7b0d3;--ink:#fff1b8;--night:#070d24;--night-2:#0a1230;
  --serif:"Cormorant",Georgia,serif;--sans:"Manrope",system-ui,sans-serif;--hand:"Caveat","Comic Sans MS",cursive;
  --ease-out:cubic-bezier(.2,.75,.2,1);
  --pyro:#ff9a5a;--cryo:#9fe7ff;--hydro:#5fc4ff;--anemo:#74f2c8;--dendro:#a6e86a;--electro:#c69bff;
  color-scheme:dark;accent-color:var(--gold);
  scrollbar-color:color-mix(in oklab,var(--gold) 55%,var(--night)) var(--night);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;color:var(--text);font-family:var(--sans);line-height:1.6;overflow-x:clip;background:var(--night);
  -webkit-font-smoothing:antialiased;
  background-image:
    radial-gradient(1100px 700px at 50% -5%,#1b3172 0%,transparent 62%),
    radial-gradient(900px 600px at 0% 70%,#141f52 0%,transparent 60%),
    radial-gradient(800px 600px at 100% 85%,#1a1a4d 0%,transparent 60%),
    linear-gradient(180deg,var(--night),var(--night-2) 50%,#060b1f)}
::selection{background:color-mix(in oklab,var(--gold) 70%,transparent);color:#0a1230;text-shadow:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-radius:6px}
img{max-width:100%;display:block}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}

/* film grain — tiny inline SVG, decorative */
body::after{content:"";position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.07;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* hairline golden scroll progress (scroll-driven, decorative) */
@supports (animation-timeline:scroll()){
  @media (prefers-reduced-motion:no-preference){
    body::before{content:"";position:fixed;inset:0 0 auto;height:2px;z-index:60;pointer-events:none;transform-origin:0 50%;
      background:linear-gradient(90deg,transparent,var(--gold) 30%,var(--gold-hi) 70%,transparent);
      box-shadow:0 0 10px var(--gold);animation:progress linear both;animation-timeline:scroll(root)}
  }
}
@keyframes progress{from{scale:0 1}to{scale:1 1}}

/* ───────── hero: full-bleed art ───────── */
.hero{position:relative;height:100vh;height:100svh;min-height:620px;max-height:1100px;overflow:hidden;background:var(--night);view-timeline:--hero block}
.hero picture{position:absolute;inset:0;overflow:hidden}
.hero-bg{width:100%;height:100%;object-fit:cover;object-position:45% 30%;transform-origin:50% 30%}
.scrim{position:absolute;inset:0;pointer-events:none;background:
  linear-gradient(180deg,rgba(7,13,36,.55) 0%,rgba(7,13,36,0) 14%),
  radial-gradient(70% 60% at 82% 100%,rgba(7,13,36,.92) 0%,rgba(7,13,36,.55) 45%,rgba(7,13,36,0) 75%),
  linear-gradient(180deg,rgba(10,18,48,0) 62%,rgba(10,18,48,.75) 84%,var(--night-2) 100%)}
.motes{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:block}
.motes--hero{opacity:.75;-webkit-mask-image:linear-gradient(180deg,transparent,#000 35%);mask-image:linear-gradient(180deg,transparent,#000 35%)}
.hero-text{position:absolute;right:0;bottom:0;width:min(760px,56vw);padding:0 5vw 5vh 0;text-align:right;z-index:2}
.wordmark{display:inline-flex;align-items:center;gap:12px;font-family:var(--serif);font-size:26px;font-weight:700;letter-spacing:.04em;text-shadow:0 2px 12px #000;
  & .wm span{color:var(--gold)}}
.mark{width:34px;height:34px;position:relative;display:grid;place-items:center;
  &::before{content:"";position:absolute;inset:3px;border:1.5px solid var(--gold);transform:rotate(45deg);border-radius:5px;box-shadow:0 0 14px #5fe3ff55;background:#070d2499}
  & .gem{position:relative;animation:gem-pulse 4s ease-in-out infinite}}
.gem{display:inline-block;width:16px;height:16px;background:linear-gradient(135deg,#e6f1ff,#6fa8ff 45%,#9b8cff 70%,#f3a6ff);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);filter:drop-shadow(0 0 4px #9b8cff)}
@keyframes gem-pulse{50%{scale:1.18;rotate:45deg;filter:drop-shadow(0 0 8px #b9adff)}}

h1{font-family:var(--serif);font-weight:600;font-size:clamp(34px,3.9vw,60px);line-height:1.06;margin:14px 0 0;color:#fff;text-wrap:balance;
  text-shadow:0 2px 6px #000,0 0 30px #000c,0 0 40px #5fe3ff22}
/* shimmering gold text (h1 + h2 accents) */
h1 em,h2 em{font-style:normal;color:var(--gold);text-shadow:none}
@supports (background-clip:text) or (-webkit-background-clip:text){
  h1 em,h2 em{color:transparent;-webkit-text-fill-color:transparent;
    background:linear-gradient(100deg,#d9b260 0%,#f3d58e calc(var(--shine) - 14%),#fff8dc var(--shine),#f3d58e calc(var(--shine) + 14%),#d9b260 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-box-decoration-break:clone;box-decoration-break:clone;
    animation:shine 7s var(--ease-out) infinite}
  h1 em{filter:drop-shadow(0 2px 4px #000) drop-shadow(0 0 16px rgb(227 194 122 / .35))}
  h2 em{filter:drop-shadow(0 0 14px rgb(227 194 122 / .3));animation-delay:-2.5s}
}
@keyframes shine{0%,35%{--shine:-20%}75%,100%{--shine:120%}}

/* entrance (no JS): @starting-style */
.wordmark,h1{transition:opacity 1.1s var(--ease-out),translate 1.1s var(--ease-out),filter 1.1s var(--ease-out)}
h1{transition-delay:.15s}
@starting-style{.wordmark,h1{opacity:0;translate:0 18px;filter:blur(8px)}}

/* parallax + title fade on scroll (scroll-driven animations; static elsewhere) */
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .hero-bg{animation:hero-par linear both;animation-timeline:--hero;animation-range:exit 0% exit 100%}
    .hero-text{animation:hero-out linear both;animation-timeline:--hero;animation-range:exit 5% exit 75%}
    .motes--hero{animation:hero-motes linear both;animation-timeline:--hero;animation-range:exit 0% exit 100%}
  }
}
@keyframes hero-par{to{translate:0 20%;scale:1.08}}
@keyframes hero-out{to{opacity:0;translate:0 -60px;filter:blur(6px)}}
@keyframes hero-motes{to{translate:0 -25%}}

/* ───────── reviews ───────── */
.reviews-sec{position:relative;isolation:isolate;padding:70px 0 110px;overflow:clip;
  background:
    radial-gradient(60% 45% at 50% 42%,rgb(227 194 122 / .07),transparent 70%),
    radial-gradient(40% 30% at 15% 80%,rgb(95 227 255 / .05),transparent 70%),
    linear-gradient(180deg,var(--night-2),rgba(10,18,48,0) 300px);
  & .motes{z-index:-1;-webkit-mask-image:linear-gradient(180deg,transparent,#000 140px,#000 calc(100% - 120px),transparent);
    mask-image:linear-gradient(180deg,transparent,#000 140px,#000 calc(100% - 120px),transparent)}
  & .wrap{container:reviews / inline-size}}
.orn{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:14px;
  &::before,&::after{content:"";height:1px;width:min(120px,22vw);background:linear-gradient(90deg,transparent,var(--gold))}
  &::after{scale:-1 1}
  & .gem{width:14px;height:14px;animation:gem-pulse 5s ease-in-out infinite}}
h2{font-family:var(--serif);font-weight:600;font-size:clamp(32px,4vw,52px);text-align:center;margin:0;color:#fff;line-height:1.1;text-wrap:balance}
.sub{color:var(--muted);text-align:center;margin:14px auto 0;max-width:600px;text-wrap:pretty}

.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:56px;padding-bottom:30px}
@container reviews (width < 1060px){.grid{grid-template-columns:repeat(2,1fr);gap:28px 22px}}
@container reviews (width < 600px){.grid{grid-template-columns:1fr;gap:30px;padding-bottom:0}}
/* masonry-ish rhythm: lift every other column a little */
@container reviews (width >= 600px){.grid>.card:nth-child(even){top:30px}}

.card{
  --el:var(--gold);--rx:0deg;--ry:0deg;--mx:50%;--my:30%;--i:0;
  position:relative;padding:28px 22px 22px;border-radius:20px;display:flex;flex-direction:column;
  container-type:inline-size;
  background:
    radial-gradient(120% 60% at 100% 0%,color-mix(in oklab,var(--el) 9%,transparent),transparent 60%),
    linear-gradient(180deg,rgb(24 42 96 / .62),rgb(10 19 48 / .74));
  -webkit-backdrop-filter:blur(8px) saturate(1.3);backdrop-filter:blur(8px) saturate(1.3);
  box-shadow:inset 0 1px 0 #ffffff17,inset 0 0 0 1px #ffffff08,0 26px 50px -30px #000,0 0 0 0 transparent;
  transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));
  transition:transform .6s var(--ease-out),box-shadow .5s ease;
  /* animated gradient border with a travelling sheen */
  &::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
    background:conic-gradient(from var(--ang),
      color-mix(in oklab,var(--gold) 22%,transparent) 0deg,
      color-mix(in oklab,var(--gold) 22%,transparent) 220deg,
      color-mix(in oklab,var(--el) 85%,white) 262deg,
      var(--gold-hi) 276deg,
      color-mix(in oklab,var(--gold) 22%,transparent) 320deg);
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
    mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
    animation:spin 10s linear infinite;animation-delay:calc(var(--i) * -2.3s)}
  /* light that follows the pointer */
  &::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;
    background:radial-gradient(280px circle at var(--mx) var(--my),color-mix(in oklab,var(--el) 20%,transparent),transparent 65%),
               radial-gradient(120px circle at var(--mx) var(--my),#ffffff10,transparent 70%)}
  & > :not(.region){position:relative;z-index:1}
  &:hover{box-shadow:inset 0 1px 0 #ffffff1f,inset 0 0 0 1px #ffffff0c,0 30px 60px -30px #000,0 10px 50px -18px color-mix(in oklab,var(--el) 55%,transparent);
    &::after{opacity:1}
    &::before{animation-duration:3.5s}
    & .ava{scale:1.06;box-shadow:0 0 0 2px #0b1535,0 0 0 3.5px color-mix(in oklab,var(--gold) 55%,var(--a)),0 0 26px 0 var(--a)}
    & .ava::after{opacity:1;animation-play-state:running}
    & .region{translate:0 -3px;box-shadow:0 0 22px 0 var(--g,#5fe3ff)}}
  &.tilting{transition:transform .12s linear,box-shadow .5s ease}
}
.card:nth-child(4n+2){--i:1}.card:nth-child(4n+3){--i:2}.card:nth-child(4n+4){--i:3}
/* element accent per reviewer via :has() */
.card:has(.ava--pyro){--el:var(--pyro)}
.card:has(.ava--cryo){--el:var(--cryo)}
.card:has(.ava--hydro){--el:var(--hydro)}
.card:has(.ava--anemo){--el:var(--anemo)}
.card:has(.ava--dendro){--el:var(--dendro)}
.card:has(.ava--electro){--el:var(--electro)}
@keyframes spin{to{--ang:360deg}}

.region{position:absolute;z-index:2;top:-17px;right:18px;width:36px;height:36px;display:grid;place-items:center;font-size:17px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#1a2a5e,#0b1535);border:1.5px solid var(--gold);box-shadow:0 0 14px -2px var(--g,#5fe3ff);
  transition:translate .5s var(--ease-out),box-shadow .5s}
.stars{font-size:15px;letter-spacing:3px;color:var(--gold);line-height:1;padding-top:2px;width:fit-content;
  & i{font-style:normal;color:#3b4775;-webkit-text-fill-color:#3b4775}}
@supports (background-clip:text) or (-webkit-background-clip:text){
  .stars{color:transparent;-webkit-text-fill-color:transparent;
    background:linear-gradient(100deg,#d9b260 0%,#f3d58e calc(var(--shine) - 18%),#fffbe8 var(--shine),#f3d58e calc(var(--shine) + 18%),#d9b260 100%);
    -webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 6px rgb(227 194 122 / .45));
    animation:shine 6s var(--ease-out) infinite;animation-delay:calc(var(--i) * .35s)}
}
.card p{font-family:var(--serif);font-size:19.5px;line-height:1.36;margin:14px 0 18px;flex:1;color:#eef1ff;text-wrap:pretty}
.who{border-top:1px solid;border-image:linear-gradient(90deg,color-mix(in oklab,var(--gold) 30%,transparent),transparent) 1;
  padding-top:16px;font-size:14px;display:flex;align-items:center;gap:14px;
  & b{display:block;color:#fff;font-weight:700;letter-spacing:.01em}
  & span{color:var(--muted);font-size:12.5px}}
@container (width < 180px){.who{flex-direction:column;align-items:flex-start}}

.ava{--a:#5fe3ff;--b:#13306b;position:relative;flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 32% 28%,#ffffff55,transparent 45%),linear-gradient(145deg,var(--a),var(--b));
  box-shadow:0 0 0 2px #0b1535,0 0 0 3.5px color-mix(in oklab,var(--gold) 70%,var(--a)),0 0 18px -2px var(--a);
  transition:scale .5s var(--ease-out),box-shadow .5s;
  /* orbiting element-coloured arc */
  &::after{content:"";position:absolute;inset:-7px;border-radius:50%;pointer-events:none;opacity:.55;transition:opacity .5s;
    background:conic-gradient(from var(--ang),transparent 0 62%,color-mix(in oklab,var(--a) 70%,transparent) 82%,#fff 88%,transparent 90%);
    -webkit-mask:radial-gradient(closest-side,transparent calc(100% - 1.6px),#000 calc(100% - 1.4px));
    mask:radial-gradient(closest-side,transparent calc(100% - 1.6px),#000 calc(100% - 1.4px));
    animation:spin 6s linear infinite paused}
  & img{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;object-fit:cover;z-index:1}
  & .ini{font-family:var(--serif);font-weight:700;font-size:22px;line-height:1;color:#fff;text-shadow:0 1px 3px #0009;letter-spacing:.02em}
  & .el{position:absolute;right:-5px;bottom:-5px;width:24px;height:24px;padding:4px;border-radius:50%;background:#0b1535;border:1.5px solid var(--gold);color:var(--a);z-index:2;filter:drop-shadow(0 0 3px var(--a))}}
.ava--cryo{--a:var(--cryo);--b:#2a6fa8}
.ava--pyro{--a:var(--pyro);--b:#9c2a1e}
.ava--electro{--a:var(--electro);--b:#4a2a8f}
.ava--dendro{--a:var(--dendro);--b:#2f6b2a}
.ava--hydro{--a:var(--hydro);--b:#1d4fa0}
.ava--anemo{--a:var(--anemo);--b:#1f7a63}

.card.slow p{font-family:var(--hand);font-size:25px;line-height:1.15;color:#d9f6ff}
.late{display:inline-block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#a9e6ff!important;border:1px solid #a9e6ff55;border-radius:12px;padding:2px 9px;margin-top:8px;background:#a9e6ff0d;text-wrap:balance}

/* staggered scroll reveal: CSS scroll-driven first, IntersectionObserver fallback (.js .card.in) */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .card{animation:card-in both var(--ease-out);animation-timeline:view();
      animation-range:entry calc(var(--i) * 7%) entry calc(65% + var(--i) * 7%)}
  }
  @supports not (animation-timeline:view()){
    .js .card{opacity:0;translate:0 44px;scale:.97;
      transition:opacity .9s var(--ease-out),translate .9s var(--ease-out),scale .9s var(--ease-out),transform .6s var(--ease-out),box-shadow .5s;
      transition-delay:calc(var(--i) * 110ms)}
    .js .card.in{opacity:1;translate:0 0;scale:1}
  }
}
@keyframes card-in{from{opacity:0;translate:0 48px;scale:.96}to{opacity:1;translate:0 0;scale:1}}

footer{position:relative;text-align:center;color:#7f89b3;font-size:13px;padding:30px 0 40px;
  &::before{content:"";position:absolute;top:0;left:50%;translate:-50% 0;width:min(640px,80%);height:1px;background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--gold) 45%,transparent),transparent)}
  & p{margin:0}
  & .gem{width:10px;height:10px;margin:0 8px;vertical-align:0}}

@media (max-width:760px){
  .hero{height:auto;min-height:0;max-height:none;padding-top:min(72vw,400px)}
  .hero picture{bottom:auto;height:min(86vw,500px)}
  .hero-bg{object-position:70% 40%}
  .scrim{background:linear-gradient(180deg,rgba(7,13,36,.35) 0%,rgba(7,13,36,0) 12%,rgba(7,13,36,0) min(52vw,280px),var(--night-2) min(86vw,500px))}
  .hero-text{position:relative;width:auto;padding:0 18px 10px;text-align:center}
}
@media (max-width:600px){
  h1{font-size:34px}
  .wrap{padding:0 16px}
  .card p{font-size:19px}
  .reviews-sec{padding-top:56px}
}
/* glass is GPU-hungry over a live canvas: phones get a solid card instead */
@media (max-width:760px),(pointer:coarse){
  .card{-webkit-backdrop-filter:none;backdrop-filter:none;
    background:radial-gradient(120% 60% at 100% 0%,color-mix(in oklab,var(--el) 9%,transparent),transparent 60%),linear-gradient(180deg,rgb(22 39 90 / .9),rgb(11 20 50 / .93))}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
@media (forced-colors:active){.card{border:1px solid CanvasText}}

/* ───────── contact CTA ───────── */
.vh{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.contact{position:relative;margin-top:-30px;padding:0 0 96px;text-align:center;
  background:radial-gradient(38% 60% at 50% 62%,rgb(227 194 122 / .09),transparent 70%)}
.contact-quip{font-family:var(--serif);font-weight:600;font-size:clamp(24px,2.6vw,32px);margin:0 0 26px;color:#eef1ff;
  & span{color:var(--muted);font-style:italic;font-weight:500}}
.tg-btn{--tx:0px;--ty:0px;--lift:0px;
  position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:12px;
  padding:16px 32px 16px 26px;border-radius:999px;text-decoration:none;
  font-family:var(--sans);font-weight:700;font-size:17px;letter-spacing:.02em;color:var(--gold-hi);
  background:
    linear-gradient(180deg,rgb(255 242 196 / .16),rgb(255 242 196 / 0) 55%),
    linear-gradient(135deg,rgb(227 194 122 / .34),rgb(170 125 45 / .26));
  -webkit-backdrop-filter:blur(8px) saturate(1.3);backdrop-filter:blur(8px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgb(255 248 220 / .35),0 10px 30px -12px #000,0 0 26px -6px rgb(227 194 122 / .55);
  text-shadow:0 1px 8px rgb(0 0 0 / .45);
  translate:var(--tx) calc(var(--ty) + var(--lift));
  transition:translate .45s var(--ease-out),box-shadow .45s ease,color .3s;
  overflow:hidden;
  animation:tg-glow 3.6s ease-in-out infinite;
  /* rotating golden border */
  &::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;
    background:conic-gradient(from var(--ang),rgb(227 194 122 / .55) 0deg,rgb(227 194 122 / .55) 200deg,var(--gold-hi) 250deg,#fff 268deg,rgb(227 194 122 / .55) 320deg);
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
    mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
    animation:spin 6s linear infinite}
  /* diagonal sheen sweep */
  &::after{content:"";position:absolute;inset:-2px;z-index:-1;pointer-events:none;
    background:linear-gradient(105deg,transparent 35%,rgb(255 250 230 / .38) 50%,transparent 65%) no-repeat;
    background-size:250% 100%;background-position:150% 0;animation:tg-sheen 4.5s var(--ease-out) infinite}
  &:hover{--lift:-3px;color:#fff;
    box-shadow:inset 0 1px 0 rgb(255 248 220 / .5),0 16px 36px -14px #000,0 0 44px -4px rgb(227 194 122 / .75)}
  &:hover::after{animation-duration:1.6s}
  &:active{--lift:0px;transition-duration:.12s}
  &:focus-visible{outline:2px solid var(--gold-hi);outline-offset:5px;border-radius:999px;
    box-shadow:inset 0 1px 0 rgb(255 248 220 / .5),0 0 0 6px rgb(227 194 122 / .18),0 0 44px -4px rgb(227 194 122 / .75)}
  &.magnet{transition:translate .15s linear,box-shadow .45s ease,color .3s}
}
.tg-ico{width:24px;height:24px;flex:none;color:var(--gold-hi);filter:drop-shadow(0 0 6px rgb(227 194 122 / .6));transition:translate .45s var(--ease-out),rotate .45s var(--ease-out)}
.tg-btn:hover .tg-ico{translate:2px -2px;rotate:-8deg}
@keyframes tg-sheen{0%,55%{background-position:150% 0}100%{background-position:-50% 0}}
@keyframes tg-glow{50%{filter:drop-shadow(0 0 10px rgb(227 194 122 / .35))}}
@media (max-width:760px),(pointer:coarse){.tg-btn{-webkit-backdrop-filter:none;backdrop-filter:none}}
@media (max-width:600px){.contact{padding-bottom:72px}.tg-btn{font-size:16px;padding:15px 26px 15px 22px}}
@media (prefers-reduced-motion:reduce){.tg-btn,.tg-btn::before,.tg-btn::after{animation:none!important}.tg-btn:hover{--lift:0px}}
@media (forced-colors:active){.tg-btn{border:2px solid ButtonText}}

/* no text selection, no tap highlight / long-press menu */
html{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
*{-webkit-tap-highlight-color:transparent}
img{-webkit-user-drag:none;user-drag:none;pointer-events:none}
a,button{-webkit-touch-callout:none;outline:none}
:focus:not(:focus-visible){outline:none}
@media (hover:none){.tg-btn:focus,.tg-btn:focus-visible,a:focus,a:focus-visible{outline:none;box-shadow:none}}
