/* Styles for contact.html only. */

/* edge-align */
/* Logo and page content share one left edge: a 1200px column, centered. Desktop only. */
  @media (min-width: 901px) {
    nav { padding-left: max(2rem, calc((100% - 1200px) / 2)) !important; padding-right: max(2rem, calc((100% - 1200px) / 2)) !important; }
    body > :is(section, div, main, header):not(.mobile-menu):not(.photo-modal):not(.ap-overlay):not(.hb-modal):not([class*="modal"]):not([class*="promo"]):not([id*="odal"]):not([id*="romo"]):not([id*="popup"]) {
      padding-left: max(2rem, calc((100% - 1200px) / 2)) !important;
      padding-right: max(2rem, calc((100% - 1200px) / 2)) !important;
    }
    body > :is(section, div, main, header)[style*="max-width"], .blog-wrap, .gl-wrap, .page-layout { max-width: none !important; }
    .blog-wrap, .gl-wrap, .page-layout { padding-left: max(2rem, calc((100% - 1200px) / 2)) !important; padding-right: max(2rem, calc((100% - 1200px) / 2)) !important; }
  }

/* titles-mono */
/* Single-color titles: the accent word inherits the heading color */
  h1 em, h2 em, h3 em, h1 i, h2 i, h3 i, .hero-h1 em, .section-title em, .page-hero-title em { color: inherit !important; }

/* about-light */
:root { --sand:#FAFAF8; --sand-dark:#F0EFEB; --sea:#244B48; --sea-light:#3A7A76; --sea-pale:#EEF5F4; --shore:#B8845A; --dusk:#1A3330; --text:#1A2E2B; --text-muted:#657A77; --white:#FFFFFF; --accent:#C4956A; --btn:#244B48; --btn-dark:#1A3835; }
  /* hero */
  .page-hero { background: linear-gradient(180deg, #F3F8F7 0%, #FBF9F6 100%); padding-top: 8.2rem; padding-bottom: 3.4rem; border-bottom: 1px solid rgba(36,75,72,0.08); }
  .page-hero::after { display: none; }
  .page-hero-inner { max-width: 880px; }
  .hero-eyebrow { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.6rem; letter-spacing: 0; text-transform: none; color: var(--accent); font-weight: 400; margin-bottom: .2rem; }
  .hero-h1 { color: var(--sea); font-weight: 500; font-size: clamp(2.6rem, 5vw, 4.2rem); }
  .hero-sub { color: var(--text-muted); max-width: 600px; }
  /* titles */
  .section-title { font-weight: 500; color: var(--sea); }
  .section-eyebrow { color: var(--accent); }
  .team-name, .daisy-name { font-weight: 500; color: var(--sea); }
  .team-role { color: var(--accent); }
  /* sections */
  .team { background: #FBF9F6; }
  .team-card { border: 1px solid rgba(36,75,72,0.1); box-shadow: 0 2px 12px rgba(36,75,72,0.06); }
  .team-tag { background: var(--sea-pale); color: var(--sea); }
  .why-point-icon { background: var(--sea-pale); }
  .why-visual { background: #fff; border: 1px solid rgba(36,75,72,0.12); box-shadow: 0 2px 12px rgba(36,75,72,0.06); }
  .why-visual-title { color: var(--accent); }
  .tool-chip { background: var(--sea-pale); border: 1px solid rgba(36,75,72,0.08); }
  .tool-chip:hover { background: #E3EFED; }
  .tool-name { color: var(--sea); }
  .tool-desc { color: var(--text-muted); }
  .daisy-section { background: #F3F8F7; }
  .daisy-photo-label { background: rgba(255,255,255,0.85); color: var(--sea); }
  .daisy-chip { background: var(--sea-pale); color: var(--sea); }
  .about-cta { background: #F3F8F7; border-top: 1px solid rgba(36,75,72,0.08); }
  .about-cta h2 { color: var(--sea); font-weight: 500; }
  .about-cta p { color: var(--text-muted); }
  .btn-ghost-light { color: var(--sea); border: 1px solid rgba(36,75,72,0.4); }
  .btn-ghost-light:hover { border-color: var(--sea); background: #fff; color: var(--sea); }
  .btn-primary { border-radius: 40px; }
  .btn-ghost-light { border-radius: 40px; }
  /* tighter vertical rhythm */
  .hero-sub { max-width: none; }
  @media (min-width: 901px) { .hero-sub { white-space: nowrap; } }
  .page-hero { padding-top: 7.4rem; }
  .page-hero-inner { max-width: 1100px; }
  .hero-h1 { font-size: clamp(2.3rem, 4.2vw, 3.6rem); margin-bottom: .9rem; }
  .page-hero { padding-bottom: 2.4rem; border-bottom: none; }
  .story { padding-top: 3rem; padding-bottom: 4.5rem; }
  .story-grid { gap: 5rem; }
  .team { padding-top: 4.5rem; padding-bottom: 4.5rem; }
  .why { padding-top: 4.5rem; padding-bottom: 4.5rem; }
  .daisy-section { padding-top: 4rem; padding-bottom: 4rem; }
  .about-cta { padding-top: 4.5rem; padding-bottom: 4.5rem; }
  .team-header { margin-bottom: 2.5rem; }
  @media (max-width: 900px) { .story { padding-top: 2rem; } .story-image-stack { height: 440px; } }

/* daisy-plus-css */
.daisy-meet { font-size: .78rem; letter-spacing: .16em; margin-bottom: 1.1rem; }
  .daisy-plus { margin-top: 0; font-family: 'Cormorant Garamond', serif; font-size: clamp(1.7rem, 2.6vw, 2.2rem); font-weight: 500; line-height: 1.2; color: var(--sea); margin-bottom: 1.4rem; }
  /* Daisy: text block exactly as tall as the photos */
  @media (min-width: 901px) {
    .daisy-trio { grid-template-columns: 1fr 1.35fr 1fr; gap: 2.2rem; align-items: stretch; }
    .daisy-photo-left, .daisy-photo-right { height: auto; min-height: 0; }
    .daisy-photo-left img, .daisy-photo-right img { position: absolute; inset: 0; }
    .daisy-text-center { display: flex; flex-direction: column; justify-content: center; }
    .daisy-plus { font-size: clamp(1.4rem, 2vw, 1.75rem); margin-bottom: .5rem; }
    .daisy-meet { margin-bottom: .7rem; }
    .daisy-bio { font-size: .84rem; line-height: 1.6; }
    .daisy-stats { margin-top: 1.1rem; padding-top: 1rem; }
  }

/* contact-light */
.ct-section { background: #FBF9F6; padding: 2.4rem 4rem 5rem; }
  .ct-grid { display: grid; grid-template-columns: 1fr 1.3fr; gap: 3.5rem; align-items: start; max-width: 1200px; margin: 0 auto; }
  .ct-title { font-family: 'Cormorant Garamond', serif; font-size: 2.1rem; font-weight: 500; color: var(--sea); margin-bottom: .5rem; line-height: 1.2; }
  .ct-sub { font-size: .9rem; color: var(--text-muted); line-height: 1.65; margin-bottom: 2rem; max-width: 420px; }
  .ct-left { padding-top: .5rem; }
  .ct-right { background: #fff; border: 1px solid rgba(36,75,72,0.1); border-radius: 12px; padding: 2.4rem; box-shadow: 0 2px 14px rgba(36,75,72,0.06); }
  .ct-right .ct-sub { max-width: none; margin-bottom: 1.8rem; }
  .ct-items { display: flex; flex-direction: column; }
  .ct-item { display: flex; align-items: center; gap: 1.1rem; padding: 1.1rem 0; border-bottom: 1px solid rgba(36,75,72,0.1); }
  .ct-item:first-child { border-top: 1px solid rgba(36,75,72,0.1); }
  .ct-icon { width: 42px; height: 42px; border-radius: 50%; background: var(--sea-pale); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
  .ct-label { font-size: .65rem; letter-spacing: .14em; text-transform: uppercase; color: var(--text-muted); font-weight: 500; margin-bottom: .25rem; }
  .ct-value { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; color: var(--sea); }
  .ct-value a { color: var(--sea); text-decoration: none; }
  .ct-value a:hover { text-decoration: underline; }
  .ct-note { margin-top: 1.8rem; background: #fff; border: 1px solid rgba(196,149,106,0.35); border-left: 3px solid var(--accent); border-radius: 6px; padding: 1.1rem 1.3rem; font-size: .85rem; line-height: 1.65; color: var(--text); }
  .ct-note strong { font-weight: 600; color: var(--sea); }
  .ct-social { margin-top: 1.8rem; }
  .ct-social-btns { display: flex; gap: .7rem; margin-top: .6rem; }
  .ct-social-btns a { width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(36,75,72,0.25); display: flex; align-items: center; justify-content: center; color: var(--sea); transition: background .2s; }
  .ct-social-btns a:hover { background: var(--sea-pale); }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
  .form-field { margin-bottom: 1rem; }
  .form-field label { display: block; font-size: .65rem; letter-spacing: .12em; text-transform: uppercase; color: var(--text-muted); font-weight: 500; margin-bottom: .4rem; }
  .form-field input, .form-field select, .form-field textarea { width: 100%; padding: .8rem 1rem; border: 1px solid rgba(36,75,72,0.2); border-radius: 8px; font-size: .9rem; font-family: 'DM Sans', sans-serif; color: var(--text); background: #fff; outline: none; transition: border-color .2s, box-shadow .2s; }
  .form-field input:focus, .form-field select:focus, .form-field textarea:focus { border-color: var(--sea); box-shadow: 0 0 0 3px rgba(36,75,72,0.1); }
  .form-field textarea { min-height: 120px; resize: vertical; }
  .form-submit { width: 100%; padding: 1rem; background: var(--sea); color: #fff; border: none; border-radius: 40px; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; font-family: 'DM Sans', sans-serif; font-weight: 500; cursor: pointer; transition: background .2s; margin-top: .4rem; }
  .form-submit:hover { background: var(--btn-dark); }
  .form-submit:disabled { opacity: .6; cursor: not-allowed; }
  .form-success { display: none; text-align: center; padding: 2rem 1rem; }
  .form-success-icon { width: 56px; height: 56px; border-radius: 50%; background: var(--sea); color: #fff; font-size: 1.4rem; display: flex; align-items: center; justify-content: center; margin: 0 auto 1.1rem; }
  .form-success-title { font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; color: var(--sea); font-weight: 500; margin-bottom: .5rem; }
  .form-success-msg { font-size: .9rem; color: var(--text-muted); line-height: 1.65; }
  .form-error { display: none; background: rgba(220,38,38,0.06); border: 1px solid rgba(220,38,38,0.2); color: #991b1b; padding: .75rem 1rem; border-radius: 8px; font-size: .82rem; margin-bottom: 1rem; }
  @media (max-width: 900px) { .ct-section { padding: 2.5rem 1.25rem 3.5rem; } .ct-grid { grid-template-columns: 1fr; gap: 2.2rem; } .ct-right { padding: 1.6rem; } .form-row { grid-template-columns: 1fr; } }

/* contact-simple */
.ct-hero .page-hero-inner { margin: 0 auto; text-align: center; max-width: 720px; }
  .ct-hero .hero-sub { margin: 0 auto; white-space: normal !important; }
  .ct-section { padding: 2.2rem 1.5rem 5rem !important; }
  .ct-narrow { max-width: 640px; margin: 0 auto; }
  .ct-card { background: #fff; border: 1px solid rgba(36,75,72,0.1); border-radius: 14px; padding: 2.4rem; box-shadow: 0 2px 14px rgba(36,75,72,0.06); }
  .ct-direct { text-align: center; margin-top: 2.4rem; }
  .ct-direct-title { font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; font-weight: 500; color: var(--sea); margin-bottom: .8rem; }
  .ct-direct-row { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem 2rem; }
  .ct-direct-row a { display: inline-flex; align-items: center; gap: .5rem; color: var(--text); text-decoration: none; font-size: .95rem; }
  .ct-direct-row a:hover { color: var(--sea); text-decoration: underline; }
  .ct-direct .ct-social-btns { justify-content: center; margin-top: 1.1rem; }
  @media (max-width: 600px) { .ct-card { padding: 1.5rem; } }

/* contact-extras */
.ct-check { display: flex; align-items: flex-start; gap: .7rem; font-size: .85rem; line-height: 1.5; color: var(--text); margin: 0 0 .9rem; cursor: pointer; }
  .ct-check input { width: 18px; height: 18px; margin-top: .15rem; flex-shrink: 0; accent-color: #244B48; }
  .ct-captcha { margin: 1.1rem 0 1rem; min-height: 0; }

/* contact-intro */
.ct-intro { padding: 8rem 1.5rem 2.5rem; background: #FBF9F6; }
  .ct-intro-grid { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; align-items: center; }
  .ct-intro-photo img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 16px; box-shadow: 0 14px 36px rgba(36,75,72,0.16); }
  .ct-script { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.6rem; color: var(--accent); margin-bottom: .2rem; }
  .ct-h1 { font-family: 'Cormorant Garamond', serif; font-weight: 500; font-size: clamp(2.2rem, 4vw, 3.2rem); line-height: 1.1; color: var(--sea); margin-bottom: 1.2rem; }
  .ct-intro-text p { font-size: .98rem; line-height: 1.75; color: var(--text); margin-bottom: 1rem; max-width: 520px; }
  .ct-intro-text a { color: var(--sea); text-decoration: underline; }
  .ct-section { padding-top: 1.5rem !important; }
  @media (max-width: 900px) { .ct-intro { padding-top: 6rem; } .ct-intro-grid { grid-template-columns: 1fr; gap: 1.8rem; } }

/* contact-split */
.ct-split { padding: 8rem 2rem 5rem; background: #FBF9F6; }
  .ct-split-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; align-items: start; }
  .ct-col-left .ct-intro-text { margin-bottom: 2rem; }
  .ct-col-left .ct-intro-text p { max-width: none; }
  .ct-col-left .ct-intro-photo img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 16px; box-shadow: 0 14px 36px rgba(36,75,72,0.16); }
  .ct-col-right .ct-card { margin: 0; }
  .ct-col-right .ct-direct { margin-top: 2rem; }
  @media (max-width: 900px) { .ct-split { padding: 6rem 1.25rem 3.5rem; } .ct-split-grid { grid-template-columns: 1fr; gap: 2.2rem; } }

/* nav-hover-hold */
.nav-dropdown-menu::before{content:"";position:absolute;left:0;right:0;top:-1.1rem;height:1.1rem}
.nav-dropdown:hover>.nav-dropdown-menu{display:block}

/* a11y-contrast */
/* a11y: raises text contrast to WCAG AA 4.5:1. Delete this block to revert. */
.ft-fine{color:#8e9493 !important}

/* contact-looks-css */
.cl-picker{max-width:760px;margin:0 auto 2rem;padding:.8rem 1.1rem;border:1px dashed rgba(26,51,48,0.35);border-radius:12px;background:#fff;text-align:center}
.cl-picker b{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sea);margin-bottom:.55rem}
.cl-chips{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}
.cl-chip{padding:.4rem .95rem;border-radius:30px;border:1px solid rgba(26,51,48,0.25);background:none;font-family:'DM Sans',sans-serif;font-size:.78rem;color:var(--text);cursor:pointer}
.vote-tag{display:inline-block;margin-left:.45rem;padding:.12rem .5rem;border-radius:10px;background:#8E6038;color:#fff;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;vertical-align:middle}
.cl-chip.active{background:var(--sea);border-color:var(--sea);color:#fff}
.cl-desc{font-size:.8rem;color:var(--text-muted);margin-top:.6rem}
@media (min-width:901px){
[data-cl="2"] .ct-col-left{order:2}
[data-cl="2"] .ct-col-right{order:1}
[data-cl="3"] .ct-split-grid{grid-template-columns:1fr;max-width:720px;gap:2.4rem}
[data-cl="3"] .ct-col-left .ct-intro-text{text-align:center}
[data-cl="3"] .ct-col-left .ct-intro-text p{margin-left:auto;margin-right:auto}
[data-cl="3"] .ct-col-left .ct-intro-photo img{aspect-ratio:21/9}
[data-cl="4"] .ct-split-grid{grid-template-columns:1fr 1.15fr;grid-template-areas:"photo photo" "text form";gap:2.8rem 3.5rem}
[data-cl="4"] .ct-col-left{display:contents}
[data-cl="4"] .ct-col-left .ct-intro-photo{grid-area:photo}
[data-cl="4"] .ct-col-left .ct-intro-text{grid-area:text;margin:0}
[data-cl="4"] .ct-col-right{grid-area:form}
[data-cl="4"] .ct-col-left .ct-intro-photo img{aspect-ratio:21/7}
[data-cl="5"].ct-split{background:linear-gradient(rgba(14,40,38,.74),rgba(14,40,38,.58)),url("../../images/coral-cabana-pool-tiki.jpg") center/cover no-repeat}
[data-cl="5"] .ct-col-left .ct-intro-photo{display:none}
[data-cl="5"] .ct-h1,[data-cl="5"] .ct-intro-text p{color:#fff}
[data-cl="5"] .ct-intro-text a{color:#fff}
[data-cl="6"] .ct-split-grid{grid-template-columns:1.15fr 1fr;gap:0}
[data-cl="6"] .ct-col-left{padding-right:0}
[data-cl="6"] .ct-col-left .ct-intro-photo img{aspect-ratio:4/5}
[data-cl="6"] .ct-col-right{margin-left:-6rem;margin-top:17rem;position:relative;z-index:2}
}

/* page-title-unify */
.ct-h1{font-family:'Cormorant Garamond',serif!important;font-weight:500!important;font-size:clamp(2.4rem,5vw,4rem)!important;color:#244B48!important;line-height:1.1!important}

/* ct-slides-css */
@media (min-width: 901px){
  .ct-split-grid{align-items:stretch}
  .ct-col-left{display:flex;flex-direction:column}
  .ct-col-left .ct-intro-photo{flex:1 1 auto;min-height:340px}
}
.ct-col-left .ct-intro-photo{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 14px 36px rgba(36,75,72,.16);background:#e8efed}
@media (max-width: 900px){.ct-col-left .ct-intro-photo{aspect-ratio:4/3}}
.ct-col-left .ct-intro-photo img.ct-slide{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none;object-fit:cover;opacity:0;transition:opacity 1.2s ease}
.ct-col-left .ct-intro-photo img.ct-slide.active{opacity:1}
.ct-slide-pause{position:absolute;left:.8rem;bottom:.8rem;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:rgba(20,48,45,.55);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;padding:0}
.ct-slide-pause:hover{background:rgba(20,48,45,.8)}
.ct-slide-pause svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ct-slide-pause .pp-play{display:none;fill:currentColor}
.ct-slide-pause.paused .pp-play{display:block}.ct-slide-pause.paused .pp-pause{display:none}
@media (prefers-reduced-motion: reduce){.ct-col-left .ct-intro-photo img.ct-slide{transition:none}}
