/*
Theme Name: Flex Terapias Integradas — Links
Theme URI: https://www.instagram.com/flexterapiasintegradas/
Author: DG
Description: Tema WordPress da página de links da Flex Terapias Integradas, convertido do HTML original sem alteração visual.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: flex-terapias-links
*/

:root{
      --paper:#f4f1ea;
      --paper-2:#ebe7df;
      --ink:#171719;
      --muted:#6d6b70;
      --purple:#6744c6;
      --purple-deep:#5636ac;
      --lime:#c7f200;
      --lime-soft:#ddff4f;
      --white:#fff;
      --line:rgba(23,23,25,.12);
      --shadow:0 24px 80px rgba(46,35,74,.13);
    }
    *{box-sizing:border-box}
    html{min-height:100%;background:var(--paper)}
    body{
      margin:0;min-height:100vh;color:var(--ink);overflow-x:hidden;
      font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:
        linear-gradient(rgba(23,23,25,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(23,23,25,.045) 1px,transparent 1px),
        radial-gradient(circle at 80% 10%,rgba(103,68,198,.09),transparent 30%),
        var(--paper);
      background-size:34px 34px,34px 34px,auto,auto;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    button,a{-webkit-tap-highlight-color:transparent}
    .page{position:relative;min-height:100vh;display:grid;place-items:center;padding:52px 22px 44px;isolation:isolate}
    .page::before{
      content:"";position:fixed;z-index:-2;right:-130px;top:-155px;width:390px;height:390px;border-radius:50%;
      background:var(--purple);opacity:.98;
    }
    .page::after{
      content:"";position:fixed;z-index:-2;left:-115px;bottom:-145px;width:280px;height:280px;border-radius:50%;
      border:54px solid var(--lime);opacity:.88;
    }
    .ghost-word{
      position:fixed;z-index:-1;left:-18px;top:50%;transform:translateY(-50%) rotate(-90deg);
      transform-origin:center;font-size:clamp(6rem,15vw,13rem);font-weight:900;letter-spacing:-.09em;
      color:rgba(103,68,198,.055);line-height:.75;pointer-events:none;white-space:nowrap;
    }
    .shell{width:min(100%,540px);position:relative}
    .brand-mark{display:flex;justify-content:center;margin-bottom:24px}
    .brand-card{
      width:128px;height:154px;border-radius:64px 64px 28px 28px;padding:7px;background:rgba(255,255,255,.7);
      border:1px solid rgba(255,255,255,.85);box-shadow:0 18px 60px rgba(42,29,82,.18);backdrop-filter:blur(10px);
      -webkit-backdrop-filter:blur(10px);position:relative;
    }
    .brand-card::after{content:"";position:absolute;right:-8px;top:20px;width:22px;height:22px;border-radius:50%;background:var(--lime);border:5px solid var(--paper)}
    .brand-card img{width:100%;height:100%;object-fit:cover;border-radius:58px 58px 23px 23px;display:block}
    .eyebrow{
      display:flex;justify-content:center;align-items:center;gap:10px;margin:0 0 12px;
      font-size:.71rem;font-weight:850;letter-spacing:.17em;text-transform:uppercase;color:var(--purple);
    }
    .eyebrow::before,.eyebrow::after{content:"";height:1px;width:30px;background:rgba(103,68,198,.35)}
    h1{margin:0;text-align:center;font-size:clamp(3.15rem,9vw,5.35rem);line-height:.78;letter-spacing:-.085em;font-weight:850}
    h1 span{display:block;color:var(--purple)}
    h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:700;color:var(--ink);font-size:.83em}
    .intro{max-width:425px;margin:25px auto 27px;text-align:center;font-size:.98rem;line-height:1.55;color:var(--muted)}
    .trust{
      width:max-content;max-width:100%;margin:0 auto 24px;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.67);
      border:1px solid rgba(23,23,25,.09);font-size:.73rem;font-weight:800;display:flex;align-items:center;gap:7px;
      backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)
    }
    .trust .star{color:var(--purple);font-size:.9rem} .trust strong{color:var(--purple)}
    .links{display:grid;gap:12px}
    .link-card{
      min-height:82px;padding:12px 14px 12px 12px;border-radius:23px;background:rgba(255,255,255,.84);border:1px solid rgba(23,23,25,.10);
      display:grid;grid-template-columns:56px 1fr 42px;align-items:center;gap:13px;box-shadow:0 10px 34px rgba(33,29,45,.055);
      transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease;
      backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;overflow:hidden;
    }
    .link-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--lime);transition:width .24s ease;opacity:.98}
    .link-card:hover{transform:translateY(-3px);box-shadow:0 18px 46px rgba(43,30,76,.12);border-color:rgba(103,68,198,.22)}
    .link-card:hover::before{width:5px}
    .link-card:focus-visible{outline:3px solid rgba(103,68,198,.32);outline-offset:3px}
    .link-card.primary{background:var(--purple);border-color:var(--purple);color:#fff;box-shadow:0 18px 42px rgba(103,68,198,.24)}
    .link-card.primary::before{background:var(--lime)}
    .icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--ink);color:#fff;position:relative;z-index:1}
    .primary .icon{background:rgba(255,255,255,.14);color:var(--lime);border:1px solid rgba(255,255,255,.16)}
    .icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
    .copy{position:relative;z-index:1;min-width:0}
    .copy strong{display:block;font-size:1.02rem;letter-spacing:-.025em}
    .copy small{display:block;margin-top:3px;color:var(--muted);font-size:.73rem;line-height:1.35}
    .primary .copy small{color:rgba(255,255,255,.72)}
    .arrow{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--paper-2);font-size:1rem;font-weight:900;position:relative;z-index:1;transition:transform .24s ease,background .24s ease}
    .primary .arrow{background:var(--lime);color:var(--ink)}
    .link-card:hover .arrow{transform:rotate(-45deg)}
    .footer{margin:25px auto 0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:rgba(23,23,25,.5)}
    .footer i{display:block;width:5px;height:5px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(199,242,0,.18)}
    .orbit{position:absolute;right:-54px;top:220px;width:92px;height:92px;border:1px solid rgba(103,68,198,.22);border-radius:50%;pointer-events:none}
    .orbit::after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--lime);right:3px;top:12px;box-shadow:0 0 0 6px var(--paper)}
    @media (max-width:640px){
      .page{padding:34px 16px 28px;place-items:start center}
      .page::before{width:220px;height:220px;right:-94px;top:-105px}
      .page::after{width:190px;height:190px;left:-100px;bottom:-100px;border-width:38px}
      .ghost-word{display:none}
      .brand-card{width:105px;height:126px;border-radius:54px 54px 24px 24px}
      .brand-card img{border-radius:48px 48px 19px 19px}
      .brand-card::after{width:18px;height:18px;border-width:4px;right:-5px;top:15px}
      .brand-mark{margin-bottom:19px}
      h1{font-size:clamp(3.05rem,16vw,4.3rem)}
      .intro{font-size:.9rem;margin-top:20px;margin-bottom:20px;padding:0 6px}
      .trust{font-size:.66rem;margin-bottom:18px}
      .links{gap:10px}
      .link-card{min-height:74px;grid-template-columns:50px 1fr 36px;border-radius:20px;padding:10px 12px 10px 10px;gap:11px}
      .icon{width:50px;height:50px;border-radius:16px} .icon svg{width:22px;height:22px}
      .copy strong{font-size:.94rem} .copy small{font-size:.68rem}
      .arrow{width:34px;height:34px}
      .orbit{display:none}
      .footer{margin-top:20px;font-size:.61rem}
    }
    @media (prefers-reduced-motion:no-preference){
      .brand-card{animation:float 5s ease-in-out infinite}
      .orbit::after{animation:orbitDot 5s linear infinite;transform-origin:-31px 34px}
      @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
      @keyframes orbitDot{to{transform:rotate(360deg)}}
    }
