@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');

:root { --ink:#152B2E; --teal:#2F6B63; --teal-deep:#1E4A45; --sand:#F3F0E8; --paper:#FBFAF7; --line:#DCD6C8; --amber:#B5652F; --muted:#5B6B67; --green:var(--teal); --green-dark:var(--teal-deep); --mint:var(--sand); --gold:var(--amber); --navy:var(--teal-deep); --rose:var(--teal); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { color:var(--ink); font-family:'DM Sans',sans-serif; background:var(--paper); }
h1,h2,h3,h4 { font-family:'Manrope',sans-serif; letter-spacing:-.035em; }
:focus-visible { outline:3px solid var(--amber); outline-offset:3px; }
.container-page { width:min(100% - 2rem, 76rem); margin-inline:auto; }
.section { padding:5.5rem 0; }
.eyebrow { color:var(--green); font-size:.76rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.btn-primary,.btn-secondary,.btn-ghost { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; border-radius:.7rem; font-weight:700; transition:.2s ease; }
.btn-primary { background:linear-gradient(135deg,var(--teal),var(--teal-deep)); color:white; padding:.85rem 1.2rem; box-shadow:0 12px 25px rgba(30,74,69,.24); }
.btn-primary:hover { background:linear-gradient(135deg,var(--teal-deep),var(--ink)); transform:translateY(-2px); box-shadow:0 15px 28px rgba(21,43,46,.3); }
.btn-secondary { border:1px solid var(--line); color:var(--teal-deep); background:var(--paper); padding:.8rem 1.15rem; box-shadow:0 4px 12px rgba(21,43,46,.07); }
.btn-secondary:hover { background:var(--mint); border-color:var(--green); }
.btn-ghost { color:var(--green); }
.card { background:linear-gradient(145deg,var(--paper),var(--sand)); border:1px solid var(--line); border-radius:1rem; box-shadow:0 12px 34px rgba(21,43,46,.08); }
.icon-box { width:2.8rem; height:2.8rem; display:grid; place-items:center; background:linear-gradient(145deg,var(--teal),var(--teal-deep)); color:#fff; border:1px solid rgba(255,255,255,.5); border-radius:.8rem; box-shadow:0 9px 18px rgba(30,74,69,.22); }
.site-header { position:sticky; top:0; z-index:50; background:rgba(251,250,247,.96); border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }
.topbar { background:var(--teal-deep); color:var(--sand); font-size:.76rem; }
.nav-link { font-size:.875rem; font-weight:600; color:var(--muted); padding:.5rem 0; border-bottom:2px solid transparent; }
.nav-link:hover,.nav-link[aria-current='page'] { color:var(--green); border-color:var(--green); }
.mobile-nav { display:none; }
.mobile-nav.open { display:block; }
.mobile-toggle { display:none; }
.mobile-toggle svg { width:1.2rem; height:1.2rem; }
.mobile-toggle[aria-expanded='true'] { border-color:var(--teal); background:rgba(47,107,99,.08); color:var(--teal); }
.mobile-nav a { display:block; padding:.7rem 0; font-weight:700;  border-bottom:1px solid rgba(220,214,200,.7); }
.mobile-nav a:last-child { border-bottom:0; }
.mobile-nav .btn-primary { margin-top:.65rem; display:flex; }
/* Mobile drawer — anchors to the sticky header and overlays the page instead of pushing content down.
   position:absolute resolves against the sticky .site-header, so the panel always sits just below the
   header (which is pinned to the viewport top) and tracks it while scrolling. */
.mobile-nav {
  position:absolute;
  top:100%;
  left:0;
  right:0;
  z-index:49;
  max-height:calc(100vh - 100%);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  background:#fff;
  border-radius:0 0 .9rem .9rem;
  box-shadow:0 16px 34px rgba(21,43,46,.16);
}
.hero-glow { background:radial-gradient(circle at 75% 20%,rgba(181,101,47,.18) 0,transparent 26rem),radial-gradient(circle at 10% 90%,rgba(47,107,99,.14) 0,transparent 23rem),linear-gradient(120deg,var(--paper),var(--sand)); }
.cardiac-care-section { background:radial-gradient(circle at 92% 5%,rgba(181,101,47,.18),transparent 18rem),radial-gradient(circle at 10% 80%,rgba(47,107,99,.12),transparent 22rem),linear-gradient(135deg,var(--sand) 0%,var(--paper) 52%,#e8e5db 100%); }
#treatment-cards > .card { position:relative; min-height:12.75rem; overflow:hidden; background:var(--paper); border-color:var(--line); box-shadow:0 12px 28px rgba(21,43,46,.06); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
#treatment-cards > .card::before { display:none; }
#treatment-cards > .card:hover { transform:translateY(-5px); border-color:var(--amber); box-shadow:0 20px 38px rgba(21,43,46,.17); }
#treatment-cards .icon-box { width:3.15rem; height:3.15rem; border-radius:1rem; background:linear-gradient(145deg,var(--teal),var(--teal-deep)); }
#treatment-cards > .card:nth-child(2n) .icon-box { background:linear-gradient(145deg,var(--teal-deep),var(--ink)); }
#treatment-cards > .card:nth-child(3n) .icon-box { background:linear-gradient(145deg,var(--amber),var(--teal-deep)); }
#treatment-cards h3 { color:var(--ink); line-height:1.25; }
.heart-symbol { width:1.45rem; height:1.45rem; flex:none; stroke:currentColor; }
.treatment-cta { min-width:17rem; background:linear-gradient(135deg,var(--teal),var(--teal-deep)); border:1px solid var(--teal-deep); box-shadow:0 14px 25px rgba(30,74,69,.28); }
.treatment-cta:hover { background:linear-gradient(135deg,var(--teal-deep),var(--ink)); }
.cardiac-cta { background:linear-gradient(120deg,var(--teal-deep),var(--teal) 58%,var(--ink)); box-shadow:inset 0 1px rgba(255,255,255,.16); }
.cta-light-button { background:var(--paper)!important; color:var(--teal-deep)!important; border:1px solid rgba(255,255,255,.8); box-shadow:0 10px 22px rgba(21,43,46,.25); }
.cta-light-button:hover { background:var(--sand)!important; color:var(--ink)!important; transform:translateY(-2px); }
[class~="text-[#087a5a]"] { color:var(--teal)!important; }
[class~="text-[#075943]"] { color:var(--teal-deep)!important; }
[class~="text-[#132923]"] { color:var(--ink)!important; }
[class~="text-[#36534a]"],[class~="text-[#526b63]"] { color:var(--muted)!important; }
[class~="bg-[#eef8f4]"],[class~="bg-[#e9f8f2]"] { background-color:var(--sand)!important; }
[class~="bg-[#123a31]"] { background-color:var(--teal-deep)!important; }
[class~="border-[#d8e8e1]"] { border-color:var(--line)!important; }
.international-mark { color:var(--gold); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.stat-panel { border-left:2px solid var(--gold); padding-left:1rem; }
.destination-image { filter:saturate(.9) contrast(1.02); }
.destination-card { position:relative; min-height:25rem; overflow:hidden; border-radius:1rem; background:var(--teal-deep); }
.destination-card img { position:absolute; inset:0; transition:transform .45s ease; }
.destination-card::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(10,42,34,.88)); transition:opacity .3s ease; }
.destination-card-title { position:absolute; right:1.75rem; bottom:1.5rem; left:1.75rem; z-index:1; color:white; transition:opacity .25s ease,transform .25s ease; }
.destination-card-details { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:center; padding:2rem; background:rgba(18,58,49,.94); color:white; opacity:0; transform:translateY(1rem); transition:opacity .3s ease,transform .3s ease; }
.destination-card:hover img,.destination-card:focus img,.destination-card.is-open img { transform:scale(1.05); }
.destination-card:hover::after,.destination-card:focus::after,.destination-card.is-open::after { opacity:0; }
.destination-card:hover .destination-card-title,.destination-card:focus .destination-card-title,.destination-card.is-open .destination-card-title { opacity:0; transform:translateY(-.5rem); }
.destination-card:hover .destination-card-details,.destination-card:focus .destination-card-details,.destination-card.is-open .destination-card-details { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) { .destination-card img,.destination-card-title,.destination-card-details { transition:none; } }
.image-cover { width:100%; height:100%; object-fit:cover; }
.hero-slide { position:absolute; inset:0; opacity:0; transition:opacity .65s ease; }
.hero-slide.is-active { opacity:1; }
.slide-dot { width:.55rem; height:.55rem; border-radius:999px; background:#fff9; border:1px solid #ffffffc7; }
.slide-dot.is-active { width:1.4rem; background:#fff; }
.form-field { width:100%; border:1px solid var(--line); background:var(--paper); border-radius:.65rem; padding:.7rem .8rem; font-size:.92rem; }
.form-field:focus { border-color:var(--teal); outline:2px solid rgba(47,107,99,.25); }
.lead-form-panel { background:linear-gradient(180deg,#ffffff 0%,#f5faf7 100%); border:1px solid rgba(47,107,99,.12); box-shadow:0 18px 40px rgba(21,43,46,.08); }
.lead-form-wrap { border:1px solid rgba(47,107,99,.12); border-radius:1rem; background:linear-gradient(180deg,#f8fbf9,#eef7f2); padding:1rem; }
.lead-form { display:grid; gap:1rem; }
.lead-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.875rem; }
.lead-form__field { display:flex; flex-direction:column; gap:.4rem; }
.lead-form__field--full { grid-column:1 / -1; }
.lead-form label { display:block; font-size:.8rem; font-weight:700; color:var(--ink); }
.lead-form input.form-field, .lead-form textarea.form-field { width:100%; border:1px solid var(--line); background:var(--paper); border-radius:.7rem; padding:.82rem .9rem; font-size:.92rem; color:var(--ink); transition:border-color .2s ease,box-shadow .2s ease; }
.lead-form textarea.form-field { min-height:7rem; resize:vertical; }
.lead-form input.form-field:focus, .lead-form textarea.form-field:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(47,107,99,.12); outline:none; }
.lead-form__foot { margin-top:.35rem; text-align:center; font-size:.75rem; line-height:1.6; color:var(--muted); }

/* Zoho Bigin embedded form styling to match site theme */
#BiginWebToRecordFormParent1439652000000473773,
.wf-parent,
.wf-wrapper,
.wf-form-component,
.wf-form-wrapper,
#BiginWebToRecordFormDiv1439652000000473773 {
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.wf-parent {
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}

.wf-form-component {
  width:100% !important;
  font-family:'DM Sans',sans-serif !important;
  color:var(--ink) !important;
}

.wf-header {
  display:none !important;
}

.wf-form-wrapper {
  display:grid;
  gap:.85rem;
  margin:0;
}

.wf-row {
  display:grid;
  gap:.35rem;
  margin:0;
}

.wf-label {
  font-size:.78rem !important;
  font-weight:700 !important;
  color:var(--ink) !important;
  margin:0 !important;
  line-height:1.4 !important;
}

.wf-field,
.wf-field-inner {
  width:100% !important;
}

.wf-field-item,
.wf-field input,
.wf-field textarea,
.wf-field select {
  width:100% !important;
  border:1px solid var(--line) !important;
  border-radius:.7rem !important;
  background:var(--paper) !important;
  color:var(--ink) !important;
  padding:.8rem .9rem !important;
  font-size:.92rem !important;
  line-height:1.5 !important;
  box-shadow:none !important;
  transition:border-color .2s ease, box-shadow .2s ease !important;
}

.wf-field-item:focus,
.wf-field input:focus,
.wf-field textarea:focus,
.wf-field select:focus {
  border-color:var(--teal) !important;
  box-shadow:0 0 0 3px rgba(47,107,99,.12) !important;
  outline:none !important;
}

.wf-field-item::placeholder,
.wf-field input::placeholder,
.wf-field textarea::placeholder {
  color:rgba(21,43,46,.45) !important;
}

.wform-btn-wrap {
  margin-top:.25rem;
}

.wf-btn,
.wf-btn[type='submit'],
input[type='submit'].wf-btn {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:3rem !important;
  border:none !important;
  border-radius:.75rem !important;
  background:linear-gradient(135deg,var(--teal),var(--teal-deep)) !important;
  color:#fff !important;
  font-size:.96rem !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  box-shadow:0 12px 25px rgba(30,74,69,.24) !important;
  cursor:pointer !important;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease !important;
}

.wf-btn:hover,
.wf-btn[type='submit']:hover,
input[type='submit'].wf-btn:hover {
  background:linear-gradient(135deg,var(--teal-deep),var(--ink)) !important;
  transform:translateY(-2px) !important;
  box-shadow:0 15px 28px rgba(21,43,46,.3) !important;
}

.wf-btn:disabled {
  opacity:.7 !important;
  cursor:not-allowed !important;
}

.wf-field-error,
.wf-error-parent-ele,
.wform-poweredby-container,
.wform-poweredby-container img,
#poweredBy1439652000000473773 {
  display:none !important;
}

.wf-field-error-active {
  border-color:var(--amber) !important;
}

.field-error { display:none; color:var(--amber); font-size:.78rem; margin-top:.25rem; }
.is-invalid { border-color:var(--amber); }
.is-invalid + .field-error { display:block; }
.faq-trigger[aria-expanded='true'] i { transform:rotate(45deg); }
.faq-answer { display:grid; grid-template-rows:0fr; transition:grid-template-rows .25s ease; }
.faq-answer > div { overflow:hidden; }
.faq-trigger[aria-expanded='true'] + .faq-answer { grid-template-rows:1fr; }
.journey-section { background:linear-gradient(180deg,var(--paper) 0%,var(--sand) 100%); }
.journey-track { position:relative; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1rem; }
.journey-track::before { content:''; position:absolute; top:1.25rem; right:8%; left:8%; height:2px; background:var(--line); }
.journey-step { position:relative; z-index:1; display:flex; min-width:0; flex-direction:column; align-items:center; }
.journey-number { display:grid; width:2.5rem; height:2.5rem; place-items:center; border:4px solid var(--sand); border-radius:999px; background:var(--teal); color:#fff; font-weight:800; box-shadow:0 0 0 2px var(--teal); }
.journey-step:last-child .journey-number { background:var(--amber); box-shadow:0 0 0 2px var(--amber); }
.journey-card { display:flex; width:100%; height:100%; min-height:13.5rem; margin-top:1.25rem; flex-direction:column; padding:1.25rem 1rem; border:1px solid var(--line); border-radius:.8rem; background:rgba(251,250,247,.82); box-shadow:0 10px 24px rgba(21,43,46,.06); opacity:.9; transition:transform .25s ease,opacity .25s ease,box-shadow .25s ease,border-color .25s ease; }
.journey-step:hover .journey-card,.journey-step:focus-within .journey-card { transform:translateY(-5px); opacity:1; border-color:var(--teal); box-shadow:0 18px 32px rgba(21,43,46,.14); }
.journey-step:hover .journey-number,.journey-step:focus-within .journey-number { transform:scale(1.08); }
.journey-number { transition:transform .25s ease; }
.journey-card h3 { color:var(--ink); font-size:1rem; font-weight:800; line-height:1.3; }
.journey-kicker { color:var(--amber); font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.journey-card p:last-child { color:var(--muted); }
.prose-p { color:var(--muted); line-height:1.75; }
.quote-table th { background:var(--teal-deep); color:white; font-size:.76rem; letter-spacing:.04em; text-transform:uppercase; }
.quote-table th,.quote-table td { padding:1rem; text-align:left; border-bottom:1px solid var(--line); white-space:nowrap; }
.quote-table td:nth-child(2) { color:var(--teal-deep); font-weight:700; background:var(--sand); }
.destination-preview-card { transition:transform .25s ease,box-shadow .25s ease; }
.destination-preview-card:hover { transform:translateY(-4px); box-shadow:0 18px 34px rgba(21,43,46,.14); }
.destination-preview-image { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.services-hero { background:linear-gradient(125deg,var(--sand),var(--paper)); }
.services-hero-note { max-width:22rem; padding:1.5rem; border-left:3px solid var(--amber); background:rgba(251,250,247,.72); }
.services-intro { display:flex; align-items:end; justify-content:space-between; gap:3rem; }
.services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.service-panel { display:flex; min-height:19rem; flex-direction:column; padding:1.5rem; border:1px solid var(--line); border-radius:1rem; background:var(--paper); box-shadow:0 10px 25px rgba(21,43,46,.06); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.service-panel:hover { transform:translateY(-5px); border-color:var(--teal); box-shadow:0 18px 34px rgba(21,43,46,.13); }
.service-panel-featured { background:linear-gradient(135deg,var(--teal-deep),var(--teal)); color:#fff; border-color:var(--teal-deep); }
.service-panel-featured h3 { color:#fff!important; }
.service-panel-featured p { color:rgba(255,255,255,.82)!important; }
.service-panel-featured .service-index { color:var(--sand); }
.service-panel-featured .service-icon { background:var(--amber); }
.service-panel-top { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.service-icon { display:grid; width:2.75rem; height:2.75rem; place-items:center; border-radius:.75rem; background:var(--sand); color:var(--teal-deep); }
.service-icon svg { width:1.25rem; height:1.25rem; }
.service-index { color:var(--teal); font-size:.68rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.service-panel h3 { margin-top:1.4rem; color:var(--ink); font-size:1.35rem; font-weight:800; line-height:1.25; }
.service-panel p { margin-top:.7rem; color:var(--muted); line-height:1.7; }
.service-panel .btn-ghost { margin-top:auto; padding-top:1.25rem; align-self:flex-start; }
.service-panel-featured .btn-ghost { color:#fff; }
.service-process { background:var(--sand); }
.process-list { display:grid; gap:.75rem; }
.process-list > div { display:grid; grid-template-columns:3rem 1fr; column-gap:1rem; padding:1.25rem 0; border-bottom:1px solid var(--line); }
.process-list > div:last-child { border-bottom:0; }
.process-list span { grid-row:span 2; color:var(--amber); font-family:'Manrope',sans-serif; font-size:1.1rem; font-weight:800; }
.process-list h3 { color:var(--ink); font-weight:800; }
.process-list p { margin-top:.25rem; color:var(--muted); font-size:.9rem; line-height:1.6; }
body[data-page='procedures-cabg'] main > section:first-child { background:radial-gradient(circle at 90% 20%,rgba(181,101,47,.18),transparent 20rem),linear-gradient(125deg,var(--sand),var(--paper)); border-bottom:1px solid var(--line); }
body[data-page='procedures-cabg'] main > section { padding-top:5.5rem; padding-bottom:5.5rem; }
body[data-page='procedures-cabg'] main > section:first-child h1 { max-width:50rem; }
body[data-page='procedures-cabg'] main > section:first-child .eyebrow { color:var(--amber); }
body[data-page='procedures-cabg'] #quick-answer { position:relative; overflow:hidden; border:0!important; background:linear-gradient(135deg,var(--teal-deep),var(--teal)); color:#fff; box-shadow:0 18px 38px rgba(21,43,46,.16); }
body[data-page='procedures-cabg'] #quick-answer::before { content:''; position:absolute; top:-4rem; right:-3rem; width:12rem; height:12rem; border-radius:999px; background:rgba(181,101,47,.2); }
body[data-page='procedures-cabg'] #quick-answer .international-mark { position:relative; color:var(--sand); }
body[data-page='procedures-cabg'] #quick-answer .prose-p { position:relative; color:rgba(255,255,255,.86); }
body[data-page='procedures-cabg'] #quick-answer strong { color:#fff; }
body[data-page='procedures-cabg'] main > section:nth-of-type(3),body[data-page='procedures-cabg'] main > section:nth-of-type(5) { background:var(--sand); }
body[data-page='procedures-cabg'] main > section:nth-of-type(3) .container-page > div:first-child,body[data-page='procedures-cabg'] main > section:nth-of-type(5) .container-page > div:first-child { padding:1.5rem; border-left:3px solid var(--teal); }
body[data-page='procedures-cabg'] .quote-table { background:var(--paper); }
body[data-page='procedures-cabg'] .quote-table td,body[data-page='procedures-cabg'] .quote-table th { padding:1.1rem; }
body[data-page='procedures-cabg'] .timeline-step { padding:1.25rem 1.25rem 1.25rem 4.5rem; border:1px solid var(--line); border-radius:.8rem; background:var(--paper); box-shadow:0 10px 24px rgba(21,43,46,.06); }
body[data-page='procedures-cabg'] .timeline-step:not(:last-child)::after { left:1.95rem; top:4rem; bottom:-2rem; background:var(--teal); opacity:.35; }
body[data-page='procedures-cabg'] .timeline-step > span { left:1rem; top:1.25rem; background:var(--teal)!important; }
body[data-page='procedures-cabg'] .timeline-step:hover { border-color:var(--teal); transform:translateY(-3px); box-shadow:0 16px 30px rgba(21,43,46,.12); }
body[data-page='procedures-cabg'] .timeline-step { transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.cabg-glance-section { background:var(--paper); }
.cabg-glance-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); border-radius:1rem; overflow:hidden; background:var(--sand); }
.cabg-glance-grid > div { min-height:12rem; padding:1.5rem; border-right:1px solid var(--line); }
.cabg-glance-grid > div:last-child { border-right:0; }
.cabg-glance-label { color:var(--amber); font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.cabg-glance-grid h2 { margin-top:.75rem; color:var(--ink); font-size:1.2rem; font-weight:800; line-height:1.3; }
.cabg-glance-grid p:last-child { margin-top:.55rem; color:var(--muted); font-size:.9rem; line-height:1.6; }
@media (max-width:800px) { .cabg-glance-grid { grid-template-columns:1fr; } .cabg-glance-grid > div { min-height:0; border-right:0; border-bottom:1px solid var(--line); } .cabg-glance-grid > div:last-child { border-bottom:0; } }
@media (max-width:640px) { body[data-page='procedures-cabg'] main > section { padding-top:3.75rem; padding-bottom:3.75rem; } }
.blog-hero { background:linear-gradient(135deg,var(--sand),var(--paper)); }
.blog-featured-section { background:var(--sand); }
.blog-featured-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; }
.blog-all-link { display:inline-flex; align-items:center; gap:.45rem; color:var(--teal-deep); font-size:.9rem; font-weight:800; white-space:nowrap; border-bottom:2px solid var(--amber); padding:.45rem 0; }
.blog-all-link:hover { color:var(--amber); }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.blog-card { display:flex; min-height:100%; flex-direction:column; overflow:hidden; }
.blog-grid-featured .blog-card { background:var(--paper); border-color:rgba(220,214,200,.9); box-shadow:0 14px 30px rgba(21,43,46,.08); transition:transform .25s ease,box-shadow .25s ease; }
.blog-grid-featured .blog-card:hover { transform:translateY(-5px); box-shadow:0 20px 38px rgba(21,43,46,.14); }
.blog-card-image { width:100%; aspect-ratio:16/9; object-fit:cover; }
.blog-post-header { max-width:52rem; }
.blog-post-layout { display:grid; grid-template-columns:minmax(0,1fr) 18rem; gap:3rem; margin-top:3rem; align-items:start; }
.blog-content { max-width:48rem; }
.blog-content section { padding:1.5rem 0; border-bottom:1px solid var(--line); }
.blog-content section:first-child { padding-top:0; }
.blog-content h2 { color:var(--ink); font-size:1.45rem; font-weight:800; line-height:1.25; }
.blog-content p { color:var(--muted); line-height:1.8; margin-top:.7rem; }
.blog-disclaimer { background:var(--sand); border:0!important; border-radius:.8rem; padding:1.25rem!important; margin-top:1.5rem; }
.blog-disclaimer h2 { font-size:1.05rem; }
.blog-disclaimer p { font-size:.9rem; }
@media (max-width:900px) { .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .blog-post-layout { grid-template-columns:1fr; } .blog-featured-heading { align-items:start; flex-direction:column; gap:1.25rem; } }
@media (max-width:640px) { .blog-grid { grid-template-columns:1fr; } }
@media (max-width:800px) { .services-intro { align-items:start; flex-direction:column; gap:1rem; } .services-grid { grid-template-columns:1fr; } }
@media (max-width:900px) { .journey-track { grid-template-columns:1fr; gap:1rem; padding-left:1rem; } .journey-track::before { top:1.25rem; bottom:1.25rem; left:2.25rem; width:2px; height:auto; } .journey-step { display:grid; grid-template-columns:2.5rem minmax(0,1fr); gap:1rem; align-items:start; } .journey-card { height:auto; min-height:0; margin-top:0; } }
.back-top { opacity:0; pointer-events:none; transform:translateY(.75rem); transition:.2s; }
.back-top.show { opacity:1; pointer-events:auto; transform:none; }
.whatsapp-widget {
  position:fixed;
  right:1.1rem;
  bottom:1.1rem;
  z-index:60;
  display:grid;
  place-items:center;
  width:3.5rem;
  height:3.5rem;
  border-radius:999px;
  background:linear-gradient(135deg,#25d366,#128c7e);
  color:#fff;
  box-shadow:0 18px 30px rgba(18,140,126,.38);
  transition:transform .2s ease, box-shadow .2s ease;
}
.whatsapp-widget:hover,
.whatsapp-widget:focus-visible {
  transform:translateY(-2px) scale(1.04);
  box-shadow:0 20px 34px rgba(18,140,126,.46);
}
.whatsapp-widget svg,
footer [aria-label="WhatsApp"] svg {
  display:block;
  width:1.5rem;
  height:1.5rem;
  color:#fff;
  fill:currentColor;
}
footer [aria-label="WhatsApp"] {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.25rem;
  height:2.25rem;
  border-radius:999px;
  background:linear-gradient(135deg,#25d366,#128c7e);
  color:#fff;
  box-shadow:0 10px 20px rgba(37,211,102,.2);
}
@keyframes whatsappPulse {
  0% { box-shadow:0 0 0 0 rgba(37,211,102,.5); }
  70% { box-shadow:0 0 0 14px rgba(37,211,102,0); }
  100% { box-shadow:0 0 0 0 rgba(37,211,102,0); }
}
.whatsapp-widget { animation:whatsappPulse 2.4s infinite; }
@media (max-width: 900px) {
  .desktop-nav { display:none!important }
  .mobile-toggle { display:grid; }
  .mobile-nav { display:none; }
  .mobile-nav.open { display:block; }
  .mobile-nav a { font-size:.96rem; }
  .whatsapp-widget { right:.9rem; bottom:.9rem; width:3.2rem; height:3.2rem; }
}
@media (min-width: 901px) { .mobile-toggle,.mobile-nav { display:none!important; } }
@media (max-width:640px) { .section { padding:3.75rem 0; } h1 { font-size:2.25rem!important; } .container-page { width:min(100% - 1.25rem,76rem); } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; } }
