/* CASA AURORA — editorial refresh, November 2026
   Palette is taken from the existing powder-pink Casa Aurora brand mark.
   Intentionally quiet: no gradients, glow, glassmorphism or floating pill cards. */
:root {
  --ink: #2e292b;
  --muted: #72676b;
  --sea: #a75063;
  --deep: #4b343b;
  --sand: #f8f4f0;
  --cream: #fcf9f6;
  --line: #e8dfdb;
  --sun: #e9b4bc;
  --white: #fff;
  --rose: #f2c4c6;
  --rose-pale: #f7e7e7;
  --rose-dark: #914354;
  --radius: 3px;
  --shadow: none;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {background:var(--cream);color:var(--ink);font-family:'Helvetica Neue',Arial,sans-serif;line-height:1.66;-webkit-font-smoothing:antialiased}
p {color:#62595b}
a:hover {color:var(--rose-dark)}
::selection {background:var(--rose);color:var(--ink)}
.wrap {width:min(1160px,calc(100% - 70px))}
.narrow {max-width:800px}
.eyebrow {color:var(--rose-dark);font-size:10px;letter-spacing:.23em;font-weight:750;line-height:1.5}
h1,h2,.serif {font-family:'Iowan Old Style',Baskerville,'Times New Roman',Georgia,serif;letter-spacing:-.045em;font-weight:400}
h1 {font-size:clamp(60px,6.5vw,97px);line-height:1.01}
h2 {font-size:clamp(37px,4.4vw,59px);line-height:1.08}
h3 {font-size:21px;line-height:1.3}
section {padding:96px 0}
.btn {background:var(--deep);border-color:var(--deep);color:#fff;border-radius:3px;font-size:12px;font-weight:730;letter-spacing:.025em;min-height:50px;padding:13px 21px;transition:background .2s,color .2s,border-color .2s;transform:none}
.btn:hover {background:var(--rose-dark);border-color:var(--rose-dark);transform:none;color:#fff}
.btn.outline {color:var(--ink);border-color:#8b7b7d;background:transparent}
.btn.outline:hover {background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.light {color:var(--ink);background:var(--rose);border-color:var(--rose)}
.btn.light:hover {background:#fff;border-color:#fff;color:var(--ink)}
.btn.text-link,.link-arrow {color:var(--rose-dark);font-weight:720;font-size:12px;letter-spacing:.055em}
.link-arrow {text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.link-arrow:hover {color:var(--ink);text-decoration:none}
.topbar {height:30px;background:var(--rose);color:var(--deep);font-size:10px;letter-spacing:.115em;font-weight:650}
.topbar span {color:var(--rose-dark)}
.header {height:80px;background:var(--cream);backdrop-filter:none;border-bottom:1px solid var(--line)}
.header .wrap {gap:26px}
.brand {position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;line-height:1}
.brand-name {font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:27px;letter-spacing:-.065em;color:var(--ink);font-weight:400}
.wordmark-dot {color:var(--rose-dark)}
.brand-sub {color:var(--rose-dark);font-size:9px;letter-spacing:.29em;font-weight:720;margin-top:6px}
.menu {gap:25px}
.menu>a:not(.btn) {font-size:12px;font-weight:600}
.menu a.active {color:var(--rose-dark)}
.lang {border-left:1px solid var(--line);font-size:11px;padding-left:20px}
.lang a[aria-current] {color:var(--rose-dark)}
.hero {padding:64px 0 55px;background:var(--cream)}
.hero .grid {grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:7vw;align-items:center}
.hero-copy {padding:40px 0 25px}
.hero h1 {margin:18px 0 29px;max-width:650px}
.hero h1 em {color:var(--rose-dark);font-style:italic}
.hero-copy>p {font-size:16px;line-height:1.75;max-width:480px;color:#665c5f}
.hero-actions {margin-top:32px;gap:9px}
.hero-notes {border-top:1px solid var(--line);padding-top:22px;margin-top:34px;gap:8px 22px;color:var(--muted);font-size:11px}
.hero-notes span {white-space:nowrap}
.hero-notes b {font-weight:650;color:var(--ink)}
.hero-image {margin:0;position:relative;min-width:0;padding:0 0 0 30px}
.hero-image:before {content:'';position:absolute;left:0;top:27px;bottom:42px;width:53%;background:var(--rose);z-index:0}
.hero-image-frame {height:590px;position:relative;overflow:hidden;background:#ebded7}
.hero-image-frame img {width:100%;height:100%;object-fit:cover}
.hero-image figcaption {position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0 0;color:#877477;font-size:9px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.trust-band {background:var(--rose-pale);padding:26px 0;border-block:1px solid #f1d7d7}
.trust-band .wrap {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.trust-band .item {font-size:10px;letter-spacing:.11em;color:#a1767e;font-weight:700;display:flex;gap:10px;align-items:baseline}
.trust-band .item strong {font-weight:650;color:var(--deep);font-size:12px;letter-spacing:0}
.intro-grid {grid-template-columns:.85fr 1.15fr;gap:90px;align-items:baseline}
.intro-grid .lead {font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:clamp(23px,2.7vw,34px);line-height:1.42;color:var(--ink);letter-spacing:-.023em}
.intro-grid>div:last-child>p:last-child {max-width:570px}
.feature-grid {grid-template-columns:repeat(3,1fr);gap:32px 26px;border-top:1px solid var(--line);padding-top:34px}
.feature {border:0;border-top:1px solid var(--line);border-radius:0;padding:17px 10px 8px 0;background:transparent;min-height:165px}
.feature .glyph {color:#b97985;font-size:10px;font-family:Arial,sans-serif;font-weight:730;letter-spacing:.14em;margin-bottom:15px}
.feature h3 {font-size:15px;font-weight:750;margin-bottom:7px}
.feature p {font-size:13px;line-height:1.65}
.tint {background:#f5eeeb}
.split-feature {grid-template-columns:1.12fr .88fr;gap:8vw}
.split-feature .picture,.two-panel .picture {height:510px;overflow:hidden;border-radius:0;background:#e4d3cf}
.picture img {height:100%;width:100%;object-fit:cover}
.split-feature h2 {margin:15px 0 23px}
.split-feature p {font-size:15px;line-height:1.8}
.bullets {gap:10px;margin:26px 0 29px}
.bullets li {padding-left:20px;font-size:13px}
.bullets li:before {content:'—';color:var(--rose-dark);font-weight:700}
.highlight {background:#443038}
.highlight p {color:#e9d8db}
.highlight .eyebrow {color:#eebdc7}
.highlight .two-panel {gap:80px}
.highlight .two-panel .box-link {background:transparent;border:0;border-left:1px solid #9b7984;border-radius:0;padding:15px 20px 18px 40px}
.highlight .two-panel .box-link h3 {font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:30px;font-weight:400}
.highlight .two-panel .box-link div:first-child {font-size:30px!important;color:#e4b4bc}
.section-head {margin-bottom:44px;gap:35px}
.section-head h2 {margin-top:12px}
.section-head p {font-size:14px;line-height:1.7}
.gallery-grid {gap:9px;grid-template-columns:repeat(4,1fr)}
.gallery-grid .photo {border-radius:0;background:#eee0da}
.gallery-grid .photo:first-child {grid-column:span 2;grid-row:span 2}
.photo img {transition:none}
.photo:hover img {transform:none}
.season-grid {gap:0;border-top:1px solid #decfca}
.season {border:0;border-right:1px solid #decfca;border-radius:0;background:transparent;padding:26px 32px 21px 0}
.season + .season {padding-left:32px}
.season:last-child {border-right:0}
.season.featured {background:transparent;border-color:#decfca}
.season h3 {font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:27px}
.season .price {font-size:42px;margin:26px 0 2px}
.season p {color:var(--muted)}
.note {font-size:11px;color:#76696a}
.faq {max-width:880px}
.faq details {border-bottom:1px solid var(--line);padding:24px 0}
.faq summary {font-size:15px;font-weight:650}
.faq summary:after {color:var(--rose-dark)}
.faq details p {font-size:14px;max-width:730px}
.guide-grid,.post-list {gap:0;border-top:1px solid var(--line)}
.guide-card {background:transparent;border:0;border-right:1px solid var(--line);border-radius:0;padding:25px 26px 26px 0;gap:16px}
.guide-card + .guide-card {padding-left:26px}
.guide-card:last-child {border-right:0}
.guide-card .count {font:700 10px Arial,sans-serif;letter-spacing:.12em;color:var(--rose-dark);line-height:1.5}
.guide-card h3 {font-size:26px;line-height:1.21}
.guide-card p {font-size:13px}
.cta-banner {border-radius:0;background:var(--rose);padding:55px 65px;gap:25px}
.cta-banner h2 {max-width:620px;font-size:clamp(35px,4vw,55px)}
.cta-banner p {color:#62444a}
.cta-banner .btn.light {background:var(--deep);border-color:var(--deep);color:#fff}
.cta-banner .btn.light:hover {background:#fff;border-color:#fff;color:var(--ink)}
.footer {background:#31282c;color:#fdf6f1;padding:76px 0 28px}
.footer .columns {gap:32px}
.footer h4 {font-size:10px;letter-spacing:.18em;color:#e4b7c0}
.footer a {color:#f2e9e7}
.footer a:hover {color:#f0b5bd}
.footer p {color:#cbbfc0}
.footer .brand-name {color:#fff}
.footer .brand-sub {color:#e8b9c2}
.footbottom {border-top-color:#55454b;color:#b6a4a9;font-size:10px;line-height:1.8}
.page-hero {background:var(--rose-pale);padding:78px 0 75px;border-bottom:1px solid #edd5d5}
.page-hero h1 {font-size:clamp(50px,6vw,80px)}
.page-hero p {font-size:16px}
.breadcrumbs {color:#986875;font-size:11px}
.bodycopy {line-height:1.9}
.bodycopy a {color:var(--rose-dark)}
.booking-layout {gap:85px}
.booking-card {border:1px solid var(--line);background:#fff;border-radius:0;box-shadow:none;padding:35px}
.booking-card h3 {font-family:'Iowan Old Style',Baskerville,Georgia,serif}
.field input,.field select,.field textarea {border:1px solid #ddd3d1;border-radius:2px;background:#fcfaf8;color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus {outline-color:var(--rose-dark)}
.quiet {background:var(--rose-pale);border-color:#edd0d2;border-radius:0}
.callout {background:#f9edec;border-left-color:var(--rose-dark);border-radius:0}
.map-link {background:var(--rose-pale);border-color:#e8d3d2;border-radius:0}
.news-tag {background:var(--rose-pale);color:var(--rose-dark);border-color:#edd2d6;border-radius:2px}
.image-fallback {background:#efddd9}
@media(max-width:1020px) {
  .hero .grid {gap:35px}
  .hero-image-frame {height:500px}
  .menu {gap:15px}
  .menu>a:not(.btn) {font-size:11px}
  .split-feature {gap:40px}
}
@media(max-width:720px) {
  .wrap {width:min(100% - 38px,1160px)}
  section {padding:64px 0}
  .header {height:69px}
  .brand-name {font-size:25px}
  .menu {top:69px;background:var(--cream);border-color:var(--line);box-shadow:0 15px 26px rgba(44,36,36,.09);gap:17px}
  .menu a:not(.btn) {font-size:14px}
  .menu .lang {border-color:var(--line)}
  .hero {padding:0 0 41px}
  .hero .grid {display:flex;flex-direction:column;gap:30px}
  .hero-copy {padding:44px 0 0}
  .hero h1 {font-size:clamp(54px,11.7vw,74px);margin:15px 0 19px}
  .hero-copy>p {font-size:15px}
  .hero-notes {padding-top:17px;margin-top:26px}
  .hero-image {width:100%;padding-left:16px}
  .hero-image:before {top:18px;bottom:35px}
  .hero-image-frame {height:430px}
  .hero-image figcaption {font-size:8px;letter-spacing:.07em}
  .trust-band .wrap {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .trust-band {padding:21px 0}
  .intro-grid,.split-feature,.two-panel,.booking-layout {grid-template-columns:1fr;gap:27px}
  .feature-grid {grid-template-columns:repeat(2,1fr);gap:12px 22px}
  .feature {min-height:158px;padding:20px 4px 6px 0}
  .split-feature .picture,.two-panel .picture {height:335px}
  .highlight .two-panel {gap:38px}
  .highlight .two-panel .box-link {padding:3px 0 8px 25px}
  .section-head {margin-bottom:29px}
  .season-grid,.guide-grid {grid-template-columns:1fr}
  .season {padding:23px 0;border-right:0;border-bottom:1px solid #decfca}
  .season + .season {padding-left:0}
  .guide-card {border-right:0;border-bottom:1px solid var(--line);padding:24px 0}
  .guide-card + .guide-card {padding-left:0}
  .gallery-grid {gap:7px}
  .gallery-grid .photo:first-child {aspect-ratio:16/9}
  .cta-banner {padding:32px 27px}
  .footer .columns {gap:18px}
  .page-hero {padding:52px 0}
  .page-hero h1 {font-size:clamp(45px,10vw,64px)}
  .booking-card {padding:23px}
  .map-link {padding:25px}
  .mobile-footer-cta {background:var(--cream);border-color:var(--line)}
}
@media(max-width:410px) {
  .hero-image-frame {height:320px}
  .hero h1 {font-size:49px}
  .feature-grid {grid-template-columns:1fr}
  .field-grid {grid-template-columns:1fr}
  .hero-notes span {white-space:normal}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:720px){.topbar{display:none}}