/* YOUR.Life ,  Contact page styles */

/* GeneratePress full-width override */
.page-template-contact .site-content,
.page-template-contact .content-area,
.page-template-contact .inside-article,
.page-template-contact .entry-content,
.page-template-contact .page-content { padding: 0 !important; margin: 0 !important; width: 100% !important; max-width: 100% !important; }

/* Force full-width, no-sidebar layout (prevents the empty desktop sidebar gutter) */
.page-template-contact #content,
.page-template-contact .site-content { display: block !important; }
.page-template-contact #primary,
.page-template-contact .content-area { width: 100% !important; max-width: 100% !important; float: none !important; margin: 0 !important; }
.page-template-contact #right-sidebar,
.page-template-contact #left-sidebar,
.page-template-contact .widget-area,
.page-template-contact .sidebar { display: none !important; }

/* #omega-contact content corrections */
#omega-contact h1, #omega-contact h2, #omega-contact h3, #omega-contact h4 { font-family: var(--serif); font-weight: 400; }
#omega-contact em, #omega-contact i, #omega-contact blockquote, #omega-contact .eyebrow { font-style: normal; }
#omega-contact a, #omega-contact a:hover { text-decoration: none; }

:root {
      --navy:#1F3A4D; --cream:#F5EFE6; --sand:#E0D3BD; --brass:#8B6E55; --mist:#C9D4DC;
      --body-text:rgba(31,58,77,0.76);
      --serif:'Playfair Display',Georgia,serif; --sans:'DM Sans',-apple-system,sans-serif;
    }
*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:clip; }
body { background:var(--cream); font-family:var(--sans); color:var(--navy); overflow-x:hidden; -webkit-font-smoothing:antialiased; }

.band-cream { background:var(--cream); }
.band-sand { background:var(--sand); }
.band-navy { background:var(--navy); }
.section-pad { padding:56px 24px; }

/* Sunburst motif */
.yl-burst { position:absolute; width:620px; height:620px; pointer-events:none; z-index:0; opacity:.06; }
.burst-hero { top:-200px; right:-170px; color:#DCE6EC; opacity:.08; }
.burst-contact { bottom:-240px; left:-220px; color:var(--navy); opacity:.05; }
.burst-cta { top:-220px; left:50%; transform:translateX(-50%); color:#DCE6EC; opacity:.07; }

.eyebrow { display:block; font-family:var(--sans); font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:var(--brass); margin-bottom:14px; }
.eyebrow--on-dark { color:var(--brass); }
h1.page-headline { font-family:var(--serif); font-weight:400; font-size:42px; color:var(--cream); line-height:1.08; letter-spacing:-.015em; margin-bottom:18px; }
h2.headline { font-family:var(--serif); font-weight:400; font-size:30px; color:var(--navy); line-height:1.18; margin-bottom:14px; }

/* HERO (theme offsets content below the fixed nav, so no padding-top here) */
.page-hero { padding-top:0; background:var(--navy); position:relative; overflow:hidden; isolation:isolate; }
.page-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 80% 60% at 78% 25%, rgba(201,212,220,.07) 0%, transparent 60%), radial-gradient(ellipse 50% 50% at 10% 90%, rgba(139,110,85,.05) 0%, transparent 55%); pointer-events:none; z-index:0; }
.page-hero-inner { padding:72px 24px 72px; position:relative; z-index:1; max-width:1260px; margin:0 auto; }
.hero-lead { font-size:16px; color:rgba(245,239,230,.66); line-height:1.8; max-width:560px; margin-bottom:8px; }
.btn-hero { display:inline-block; font-family:var(--sans); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--cream); border:.5px solid rgba(245,239,230,.34); padding:16px 28px; text-decoration:none; transition:border-color .3s,color .3s; min-height:48px; margin-top:28px; cursor:pointer; background:none; }
.btn-hero:hover { border-color:var(--brass); color:var(--brass); }

/* CONTACT + HOURS */
.contact-band { position:relative; overflow:hidden; isolation:isolate; }
.contact-inner { position:relative; z-index:1; max-width:1180px; margin:0 auto; }
.contact-grid { display:flex; flex-direction:column; gap:40px; }
.contact-col-head { margin-bottom:34px; }
.contact-block { padding:22px 0; border-top:.5px solid rgba(31,58,77,.16); }
.contact-block:first-of-type { border-top:0; padding-top:0; }
.contact-label { font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:var(--brass); margin-bottom:10px; }
.contact-value { font-family:var(--serif); font-size:22px; color:var(--navy); line-height:1.4; }
.contact-value a { color:var(--navy); text-decoration:none; border-bottom:.5px solid rgba(139,110,85,.45); }
.contact-value a:hover { color:var(--brass); }
.contact-sub { font-size:14px; color:var(--body-text); line-height:1.7; margin-top:6px; }
.contact-social { display:flex; gap:18px; margin-top:4px; }
.contact-social a { font-size:12.5px; letter-spacing:.04em; color:var(--navy); text-decoration:none; border-bottom:.5px solid rgba(139,110,85,.45); }
.contact-social a:hover { color:var(--brass); }

.hours-card { background:#FBF7F0; border:.5px solid rgba(31,58,77,.12); border-radius:6px; padding:30px 26px; box-shadow:0 18px 44px rgba(31,58,77,.07); position:relative; overflow:hidden; }
.hours-card::before { content:''; position:absolute; top:0; left:0; width:3px; height:100%; background:var(--brass); opacity:.55; }
.hours-title { font-family:var(--serif); font-size:22px; color:var(--navy); margin-bottom:18px; }
.hours-row { display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding:13px 0; border-top:.5px solid rgba(31,58,77,.1); }
.hours-row:first-of-type { border-top:0; }
.hours-day { font-size:14px; color:var(--navy); }
.hours-time { font-size:13.5px; color:var(--body-text); white-space:nowrap; }
.hours-time.closed { color:var(--brass); letter-spacing:.04em; }
.btn-ghost-navy { display:inline-block; margin-top:26px; font-family:var(--sans); font-size:10.5px; letter-spacing:.13em; text-transform:uppercase; color:var(--navy); border:.5px solid rgba(31,58,77,.4); padding:15px 26px; text-decoration:none; transition:all .3s; min-height:48px; cursor:pointer; background:none; }
.btn-ghost-navy:hover { border-color:var(--brass); color:var(--brass); background:rgba(139,110,85,.05); }

/* MAP */
.map-embed { position:relative; width:100%; aspect-ratio:16/10; border-radius:6px; overflow:hidden; border:.5px solid rgba(31,58,77,.16); box-shadow:0 18px 44px rgba(31,58,77,.07); background:rgba(201,212,220,.4); }
.map-embed iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }

/* CTA */
.cta-section { background:var(--navy); padding:64px 24px; text-align:center; position:relative; overflow:hidden; isolation:isolate; }
.cta-section::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 70% 60% at 50% 10%, rgba(201,212,220,.06) 0%, transparent 60%); pointer-events:none; z-index:0; }
.cta-inner { position:relative; z-index:1; max-width:640px; margin:0 auto; }
.cta-statement { font-family:var(--serif); font-size:26px; color:var(--cream); line-height:1.35; margin-bottom:16px; }
.cta-body { font-size:14px; color:rgba(245,239,230,.6); line-height:1.7; margin-bottom:30px; }

.reveal { opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease; }
.reveal.in { opacity:1; transform:translateY(0); }
.reveal-d1 { transition-delay:.07s; }
.reveal-d2 { transition-delay:.14s; }

/* ════════ TABLET ≥ 768px ════════ */
@media (min-width:768px) {
  .section-pad { padding:96px 48px; }
  h1.page-headline { font-size:clamp(48px,5.4vw,66px); }
  h2.headline { font-size:clamp(30px,3.2vw,40px); }
  .page-hero-inner { padding:104px 48px 104px; }
  .yl-burst { width:820px; height:820px; }
  .contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; }
  .cta-statement { font-size:32px; }
}

/* ════════ DESKTOP ≥ 1024px ════════ */
@media (min-width:1024px) {
  .section-pad { padding:112px 64px; }
  .page-hero-inner { padding:120px 64px 120px; }
  .contact-grid { grid-template-columns:1.05fr 1fr; gap:80px; }
}
