/* Dra. Lucía Argüello — luxury patient website
   Palette: deep clinical green, soft gold, cream, off-white, stone texture. */
:root{
  --green-950:#0B5D3B;
  --green-900:#0B5D3B;
  --green-800:#3E7F5B;
  --green-700:#A7C4A8;
  --gold-700:#D4AF37;
  --gold-600:#D4AF37;
  --gold-400:#F1D9A7;
  --cream-100:#F8F7F3;
  --cream-200:#EADDC8;
  --offwhite:#FFFFFF;
  --stone:#EADDC8;
  --ink:#2E2E2E;
  --muted:#64645f;
  --line:rgba(212,175,55,.34);
  --shadow:0 24px 70px rgba(18,50,40,.16);
  --radius:28px;
  --serif:"Cormorant Garamond", Georgia, serif;
  --sans:"Montserrat", system-ui, -apple-system, Segoe UI, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 15% 10%, rgba(221,195,132,.28), transparent 26rem),
    radial-gradient(circle at 85% 0%, rgba(46,105,88,.12), transparent 22rem),
    linear-gradient(135deg,var(--offwhite),var(--cream-100) 40%,var(--cream-200));
  font-family:var(--sans);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed; inset:0; pointer-events:none; z-index:0; opacity:.38;
  background-image:
    linear-gradient(90deg, rgba(18,50,40,.035) 1px, transparent 1px),
    linear-gradient(rgba(18,50,40,.03) 1px, transparent 1px),
    radial-gradient(rgba(165,125,42,.12) .7px, transparent .8px);
  background-size:44px 44px,44px 44px,10px 10px;
  mix-blend-mode:multiply;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.skip-link{position:absolute;left:-999px;top:10px;background:var(--green-900);color:#fff;padding:.75rem 1rem;z-index:20;border-radius:999px}.skip-link:focus{left:10px}
.site-header{
  position:sticky; top:0; z-index:10;
  background:rgba(255,253,248,.78);
  backdrop-filter:blur(22px) saturate(160%);
  border-bottom:1px solid rgba(165,125,42,.18);
}
.nav{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.9rem 1.2rem}
.brand{display:flex;align-items:center;gap:.8rem;font-weight:600;color:var(--green-950);min-width:210px}
.brand-logo{width:230px;height:58px;object-fit:contain;object-position:left center;display:block}
.brand-mark{width:42px;height:42px;border:1px solid var(--gold-400);border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--green-900),var(--green-700));color:var(--gold-400);font-family:var(--serif);font-size:1.35rem;box-shadow:0 10px 24px rgba(18,50,40,.18)}
.brand small{display:block;color:var(--muted);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.nav-links{display:flex;align-items:center;gap:1.15rem;font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;color:var(--green-900)}
.language-switcher{display:flex;align-items:center;gap:.35rem;background:rgba(255,255,255,.62);border:1px solid rgba(212,175,55,.28);border-radius:999px;padding:.25rem;box-shadow:0 8px 20px rgba(11,93,59,.08)}
.language-switcher button{width:34px;height:34px;border:0;border-radius:50%;background:transparent;display:grid;place-items:center;font-size:1.05rem;cursor:pointer;transition:.2s ease}
.language-switcher button:hover,.language-switcher button.active{background:rgba(212,175,55,.18);transform:translateY(-1px)}
.nav-links a{padding:.45rem .15rem;position:relative}.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:.1rem;height:1px;background:var(--gold-600);transform:scaleX(0);transform-origin:left;transition:.25s}.nav-links a:hover::after,.nav-links a:focus-visible::after{transform:scaleX(1)}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;min-height:46px;padding:.78rem 1.25rem;border:1px solid transparent;font-weight:600;letter-spacing:.04em;transition:.25s ease;cursor:pointer}
.nav-cta,.btn.primary{background:var(--green-900);color:var(--offwhite);box-shadow:0 14px 32px rgba(18,50,40,.2)}
.btn.secondary{border-color:var(--gold-600);color:var(--green-900);background:rgba(255,253,248,.58)}
.nav-cta:hover,.btn.primary:hover{transform:translateY(-2px);background:var(--green-800)}.btn.secondary:hover{background:rgba(221,195,132,.18);transform:translateY(-2px)}
.hero{position:relative;z-index:1;min-height:calc(100vh - 74px);display:grid;align-items:center;padding:5.5rem 1.2rem 4rem;overflow:hidden}
.hero-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(320px,.76fr);gap:4rem;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;color:var(--gold-700);font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700}.eyebrow::before{content:"";width:44px;height:1px;background:var(--gold-600)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:.98;color:var(--green-950);margin:0;text-wrap:balance}
h1{font-size:clamp(3.6rem,8vw,8.4rem);letter-spacing:-.055em;margin:.85rem 0 1.2rem}h2{font-size:clamp(2.5rem,5vw,5.1rem);letter-spacing:-.035em}h3{font-size:clamp(1.5rem,2.2vw,2.05rem);letter-spacing:-.015em}.lead{font-size:clamp(1.08rem,2vw,1.35rem);max-width:720px;color:#3f4a42;line-height:1.68}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin:2rem 0}.credentials{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.75rem}.pill{border:1px solid var(--line);border-radius:999px;padding:.6rem .9rem;background:rgba(255,253,248,.66);font-size:.82rem;color:var(--green-900)}
.portrait-card{position:relative;border-radius:42px;background:linear-gradient(145deg,rgba(255,253,248,.86),rgba(243,234,215,.76));border:1px solid rgba(165,125,42,.25);box-shadow:var(--shadow);padding:1rem;isolation:isolate}.portrait-card::before{content:"";position:absolute;inset:1rem;border-radius:32px;background:linear-gradient(150deg,var(--green-900),var(--green-700));z-index:-1}.portrait-frame{min-height:520px;border-radius:32px;overflow:hidden;display:grid;place-items:center;background:
  linear-gradient(rgba(18,50,40,.2),rgba(18,50,40,.55)),
  radial-gradient(circle at 50% 28%,rgba(221,195,132,.45),transparent 16rem),
  linear-gradient(135deg,var(--green-800),var(--green-950));color:var(--cream-100);text-align:center;padding:2rem}.portrait-frame .initials{font-family:var(--serif);font-size:8rem;color:var(--gold-400);line-height:1}.portrait-photo{width:190px;height:190px;object-fit:cover;border-radius:50%;margin:0 auto 1.25rem;border:1px solid rgba(221,195,132,.55);box-shadow:0 20px 54px rgba(0,0,0,.28)}.card-logo{width:min(330px,88%);height:auto;margin:.2rem auto .3rem;display:block}.animated-card-logo{width:min(360px,94%);filter:drop-shadow(0 10px 18px rgba(0,0,0,.28))}.portrait-frame p{max-width:310px;margin:1rem auto 0;color:rgba(255,253,248,.82)}.floating-note{position:absolute;right:1.4rem;bottom:-1.15rem;max-width:240px;background:rgba(255,253,248,.96);border:1px solid rgba(165,125,42,.25);border-radius:22px;padding:1rem;box-shadow:0 18px 44px rgba(18,50,40,.18)}.floating-note strong{display:block;color:var(--green-950);font-family:var(--serif);font-size:1.35rem;font-weight:500}.section{position:relative;z-index:1;padding:6rem 1.2rem}.section.alt{background:linear-gradient(180deg,rgba(18,50,40,.04),rgba(255,253,248,.25));border-block:1px solid rgba(165,125,42,.12)}.container{max-width:1180px;margin:auto}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.4rem}.section-head p{max-width:520px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.card{background:rgba(255,253,248,.72);border:1px solid rgba(165,125,42,.22);border-radius:var(--radius);padding:1.45rem;box-shadow:0 12px 38px rgba(18,50,40,.08)}.card .num{font-family:var(--serif);font-size:2.8rem;color:var(--gold-600);line-height:1}.card p{color:var(--muted);margin:.85rem 0 0}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:3rem;align-items:start}.quote-panel{position:sticky;top:110px;border-radius:38px;padding:2rem;background:linear-gradient(145deg,var(--green-950),var(--green-800));color:var(--cream-100);box-shadow:var(--shadow)}.quote-panel h2{color:var(--cream-100)}.quote-panel p{color:rgba(255,253,248,.78)}.timeline{display:grid;gap:1rem}.timeline-item{display:grid;grid-template-columns:120px 1fr;gap:1.25rem;padding:1.35rem;border-bottom:1px solid var(--line);background:rgba(255,253,248,.42);border-radius:20px}.timeline-item span{font-size:.74rem;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-700);font-weight:700}.gallery{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem}.texture-tile{min-height:360px;border-radius:34px;overflow:hidden;border:1px solid rgba(165,125,42,.24);background:
  linear-gradient(135deg,rgba(18,50,40,.28),rgba(18,50,40,.02)),
  repeating-linear-gradient(45deg,rgba(165,125,42,.12) 0 1px,transparent 1px 12px),
  linear-gradient(135deg,var(--cream-200),var(--offwhite));display:flex;align-items:end;padding:1.5rem}.texture-tile.dark{background:
  radial-gradient(circle at 80% 20%,rgba(221,195,132,.22),transparent 18rem),
  linear-gradient(135deg,var(--green-900),var(--green-950));color:var(--cream-100)}.texture-tile h3{color:inherit}.contact{border-radius:44px;background:linear-gradient(135deg,var(--green-950),var(--green-800));color:var(--cream-100);padding:3rem;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.contact::after{content:"";position:absolute;right:-10rem;top:-10rem;width:24rem;height:24rem;border:1px solid rgba(221,195,132,.28);border-radius:50%;box-shadow:0 0 0 38px rgba(221,195,132,.045),0 0 0 80px rgba(221,195,132,.025)}.contact h2{color:var(--cream-100);max-width:760px}.contact p{color:rgba(255,253,248,.78);max-width:680px}.contact .btn{background:var(--gold-400);color:var(--green-950);position:relative;z-index:1}.footer{position:relative;z-index:1;padding:2rem 1.2rem;border-top:1px solid rgba(165,125,42,.18);color:var(--muted);font-size:.9rem}.footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.page-hero{padding:5rem 1.2rem 3rem}.page-hero .container{max-width:980px}.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.notice{margin-top:1rem;padding:1rem;border-radius:18px;border:1px solid rgba(165,125,42,.24);background:rgba(255,253,248,.6);color:var(--muted);font-size:.92rem}
.credentials-showcase{display:grid;grid-template-columns:1fr .72fr;gap:2rem;align-items:stretch;border-radius:44px;background:rgba(255,253,248,.58);border:1px solid rgba(165,125,42,.22);padding:1rem;box-shadow:var(--shadow)}.cv-copy{padding:2rem 1.5rem 2rem 2rem}.lead.small{font-size:1.05rem;max-width:620px}.credential-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.5rem}.credential-grid div{border:1px solid rgba(165,125,42,.24);border-radius:22px;padding:1rem;background:rgba(250,245,234,.62)}.credential-grid strong{display:block;font-family:var(--serif);font-size:2.05rem;line-height:1;color:var(--gold-700);font-weight:500}.credential-grid span{display:block;margin-top:.45rem;color:var(--muted);font-size:.9rem}.editorial-photo{min-height:520px;border-radius:34px;overflow:hidden;position:relative;background:var(--green-950)}.editorial-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,50,40,0),rgba(18,50,40,.38));pointer-events:none}.editorial-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.signature-img{max-width:220px;mix-blend-mode:multiply;opacity:.82}.clinic-card{display:grid;grid-template-columns:112px 1fr;gap:1rem;align-items:center}.clinic-logo{width:112px;height:112px;object-fit:contain;border-radius:24px;background:#fff;padding:.55rem;border:1px solid rgba(165,125,42,.2);box-shadow:0 12px 28px rgba(18,50,40,.08)}.footer-clinic-logo{width:28px;height:28px;object-fit:contain;border-radius:50%;vertical-align:middle;margin-right:.45rem;background:#fff}.treatment-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem;align-items:start}.treatment-list{border-radius:34px;background:rgba(255,253,248,.72);border:1px solid rgba(165,125,42,.22);padding:1.5rem;box-shadow:0 12px 38px rgba(18,50,40,.08)}.treatment-list h3{margin-top:1.2rem}.treatment-list h3:first-child{margin-top:0}.treatment-tags{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0 1.4rem}.treatment-tags span{border:1px solid var(--line);border-radius:999px;padding:.58rem .85rem;background:rgba(250,245,234,.72);color:var(--green-900);font-size:.88rem}.menu-figure{margin:0;border-radius:34px;overflow:hidden;border:1px solid rgba(165,125,42,.24);background:var(--offwhite);box-shadow:var(--shadow)}.menu-figure img{width:100%;display:block}.menu-figure figcaption{padding:.85rem 1rem;color:var(--gold-700);text-align:center;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.78rem}
.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.media-card{border:1px solid rgba(212,175,55,.28);border-radius:28px;padding:1.5rem;background:rgba(255,255,255,.72);box-shadow:0 18px 48px rgba(11,93,59,.09);min-height:260px;display:flex;flex-direction:column;align-items:flex-start}.media-card span{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-700);font-weight:700;margin-bottom:.7rem}.media-card h3{font-size:1.35rem;line-height:1.08;color:var(--green-900);margin-bottom:.75rem}.media-card p{font-size:.92rem;color:var(--muted);margin-bottom:1.1rem}.text-link{margin-top:auto;color:var(--green-900);font-weight:700;border-bottom:1px solid var(--gold-600);padding-bottom:.15rem}
:focus-visible{outline:3px solid var(--gold-600);outline-offset:3px}
@media(max-width:900px){.nav-links{display:none}.hero-inner,.split,.gallery,.contact,.credentials-showcase,.treatment-layout{grid-template-columns:1fr}.hero{padding-top:3.5rem}.portrait-frame{min-height:390px}.floating-note{position:static;margin:1rem}.service-grid,.two-col,.credential-grid,.media-grid{grid-template-columns:1fr}.section-head{display:block}.timeline-item{grid-template-columns:1fr}.quote-panel{position:relative;top:auto}.contact{padding:2rem}.editorial-photo{min-height:430px}h1{font-size:clamp(3.2rem,17vw,5.8rem)}}
@media(max-width:540px){.brand{min-width:118px}.brand-logo{width:124px;height:52px}.brand span{font-size:.9rem}.hero-actions{display:grid}.btn,.nav-cta{width:100%}.section{padding:4rem 1rem}.portrait-card{border-radius:28px}.portrait-frame{border-radius:22px}.contact{border-radius:28px}.clinic-card{grid-template-columns:1fr}.clinic-logo{width:138px;height:138px}.footer-inner{display:grid}}