
:root{--bg:#ffffff;--text:#3f4a58;--heading:#3c424f;--accent:#03a9f4;--dark:#222;}
[data-theme="dark"]{--bg:#1a1e26;--text:#c8d0dc;--heading:#dde3ed;--accent:#29b6f6;--dark:#0d0f14;}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Inter,Arial,sans-serif;background:var(--bg);color:#808080;line-height:1.62;font-size:13.6px;font-weight:400;transition:background 0.3s,color 0.3s,font-family 0.2s ease;}
a{color:#03a9f4;text-decoration:none}a:hover{text-decoration:underline}
.topbar{background:#111;color:#fff;padding:8px 24px;font-size:14px;letter-spacing:.01em;font-family:Inter,Arial,sans-serif}
.topbar .row{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;max-width:1400px;margin:0 auto}
.topbar .left,.topbar .right{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.hero{position:relative;min-height:430px;background:#fff center/cover no-repeat;color:#fff;display:flex;align-items:flex-end;overflow:hidden}
.hero::after{content:'';position:absolute;inset:0;background:transparent}
.navwrap{position:absolute;top:0;left:0;right:0;z-index:2;padding:22px 40px 0;display:flex;justify-content:space-between;align-items:flex-start;max-width:1400px;margin:0 auto;width:100%}
.brand{font-size:30px;font-weight:300;letter-spacing:.01em;text-transform:uppercase;color:#fff;line-height:1.08}
.brand strong{font-weight:700}
.menu{display:flex;gap:32px;font-size:17px;letter-spacing:.07em;text-transform:uppercase;align-items:center}
.menu a{color:#fff;position:relative;padding-bottom:6px}
.menu a.active::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent)}
.hero h1{position:relative;z-index:2;font-size:62px;font-weight:100;margin:0 0 24px 40px;letter-spacing:.01em}
.page{max-width:1000px;margin:0 auto;padding:34px 34px 74px;background:var(--bg)}
.page h2{color:var(--heading);font-weight:400;margin:0 0 16px;font-size:32px}
.page h3{color:var(--heading);font-weight:400;margin:26px 0 14px;font-size:28px}
.page p{font-size:18px;margin:0 0 16px;max-width:900px;color:#808080;font-weight:400}
.quote{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:600;color:#8f8f8f;font-size:18px;line-height:1.62;margin:18px 0 34px;position:relative;padding-left:52px;max-width:900px}
.quote::before{content:'\201C';position:absolute;left:0;top:-12px;font-size:60px;color:#cfcfcf;font-style:normal;font-family:'Cormorant Garamond',Georgia,serif}
.center{display:flex;justify-content:center;margin:28px 0 34px}
.center img{max-width:100%;height:auto}
.rate-title{font-size:27px;color:#39414e;margin:0 0 12px}
.ital{font-style:italic;color:#7f8d9f;line-height:1.56}
.small{font-size:18px}
.page,.tight{margin-left:auto;margin-right:auto}
.tight{max-width:760px}
.page h2,.page h3,.rate-title{font-family:Inter,Arial,sans-serif;font-weight:500}
.contact-hero h1{font-size:56px}
.rate-img{width:420px;box-shadow:none}
.site-footer{background:#111;color:#fff;padding:14px 24px}
.site-footer .row{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;max-width:1400px;margin:0 auto}
.footer-contact{font-family:Inter,Arial,sans-serif;font-size:14px;text-align:left}
.footer-contact a{color:#fff;text-decoration:none}
.footer-contact a:hover{text-decoration:underline}
.font-toggle{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;font-family:Inter,Arial,sans-serif;font-size:14px;letter-spacing:.02em}
.font-toggle button{background:transparent;border:1px solid rgba(255,255,255,0.5);color:#fff;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;letter-spacing:.04em}
.font-toggle button:hover{background:rgba(255,255,255,0.15)}
@media (max-width: 900px){
  .topbar{padding:10px 16px;font-size:13px}
  .navwrap{padding:18px 18px 0}
  .brand{font-size:22px}
  .menu{gap:14px;font-size:13px}
  .hero{min-height:300px}
  .hero h1{position:relative;z-index:2;font-size:62px;font-weight:100;margin:0 0 24px 40px;letter-spacing:.01em}
  .page{padding:22px 18px 48px}
  .page h2{font-size:28px}
  .page h3{font-size:24px}
  .page p{font-size:16px}
  .quote{font-size:18px;padding-left:34px;font-family:'Cormorant Garamond',Georgia,serif;}
  .quote::before{font-size:44px}
  .rate-title{font-size:24px}
}

.hero{background-color:#888 !important;}
.theme-toggle-btn{background:transparent;border:1px solid rgba(255,255,255,0.5);color:#fff;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:13px;letter-spacing:.04em;}
.theme-toggle-btn:hover{background:rgba(255,255,255,0.15);}
[data-theme="dark"] .page h2,[data-theme="dark"] .page h3{color:var(--heading);}
[data-theme="dark"] .rate-title{color:var(--heading);}
[data-theme="dark"] .quote{color:#8a9ab8;}
[data-font="serif"] body,
[data-font="serif"] .page h2,
[data-font="serif"] .page h3,
[data-font="serif"] .quote,
[data-font="serif"] .quote::before,
[data-font="serif"] .rate-title{font-family:'Cormorant Garamond',Georgia,serif;}

/* PHone overrides */
.mobile-display { display: none; }
@media (max-width: 750px) {
  .mobile-display { display: inline; }
  .hero h1 { font-size: 32px; margin: 0 0 16px 20px; }
  .page,.tight { text-align: center; }
  .page p,.quote,.rate-title { margin-left: auto; margin-right: auto; }
  .quote{font-family:'Cormorant Garamond',Georgia,serif;text-align:left;font-style:italic;font-weight:600;color:#8f8f8f;font-size:18px;line-height:1.62;margin:18px auto 34px;position:relative;padding-left:30px;max-width:500px}
  .quote::before{content:'\201C';position:absolute;left:0;top:-12px;font-size:40px;color:#cfcfcf;font-style:normal;font-family:Inter,Arial,sans-serif}
  .brand{font-size:16px}
  .site-footer .row{flex-direction:column;align-items:stretch}
  .footer-contact,.font-toggle{text-align:center;justify-content:center}
}

/* Hide non-phone elements on small screens by default */
.not-phone { display: none; }
@media (min-width: 751px) {
  .not-phone { display: inline; }
}
