/*
Theme Name: Ark Angel Care
Theme URI: https://arkangel.care/
Author: Ark Angel Care
Description: Bespoke, responsive Ark Angel Care WordPress theme. No page builder or paid licence required.
Version: 0.3.0
Requires at least: 6.1
Requires PHP: 7.4
Text Domain: arkangel-care
License: GPL-2.0-or-later
*/
:root{--paper:#f8f5ef;--ivory:#fffcf7;--navy:#163247;--navy-soft:#35536a;--gold:#aa8141;--line:#e4dbcb;--sub:#6a737b;--shadow:0 17px 50px rgba(29,44,52,.065)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--navy);font-family:'Segoe UI',Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #af7f2a;outline-offset:4px}
.page-shell{overflow:hidden;min-height:100vh}.site-hero{text-align:center;position:relative;padding:60px 24px 0;background:radial-gradient(ellipse 580px 340px at 50% 8%,#f7ead1 0%,rgba(247,234,209,0) 85%),var(--paper)}
.hero-decoration{position:absolute;z-index:0;left:50%;top:-232px;transform:translateX(-50%);width:1000px;height:565px;border:1px solid rgba(197,169,119,.14);border-radius:50%;pointer-events:none}
/* Compact top-left dropdown menu, no full-width navigation */
.site-menu{position:absolute;top:24px;left:max(28px,calc((100vw - 1200px)/2));z-index:12;text-align:left}.site-menu summary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;border:1px solid #e0d6c5;background:rgba(255,253,248,.92);padding:11px 15px;box-shadow:0 5px 18px rgba(25,49,65,.05);cursor:pointer;color:var(--navy);font-size:11px;font-weight:700;letter-spacing:.105em;text-transform:uppercase;list-style:none;user-select:none}.site-menu summary::-webkit-details-marker{display:none}.site-menu summary svg{width:21px;height:21px;stroke:var(--navy);stroke-width:1.8;fill:none;stroke-linecap:round}.site-menu[open] summary{background:var(--navy);border-color:var(--navy);color:white}.site-menu[open] summary svg{stroke:white}.menu-panel{width:min(324px,calc(100vw - 38px));padding:12px;position:absolute;top:calc(100% + 11px);left:0;border-radius:19px;background:#fffcf7;border:1px solid var(--line);box-shadow:0 16px 45px rgba(22,45,65,.15)}.menu-panel a{display:block;text-decoration:none;font:normal 14px/1.4 Georgia,serif;padding:12px 15px;border-radius:10px}.menu-panel a:hover{background:#f0eadc}.menu-panel .menu-divider{height:1px;background:var(--line);margin:7px 10px}
.contact-quick{position:absolute;top:33px;right:max(28px,calc((100vw - 1200px)/2));z-index:1;display:inline-flex;align-items:center;gap:8px;color:var(--navy-soft);font-size:12px;letter-spacing:.05em;text-decoration:none}.contact-quick svg{width:14px;height:14px;stroke:var(--gold);fill:none}
.branding{position:relative;z-index:1;max-width:690px;margin:0 auto}.brand-image{display:block;width:min(615px,100%);height:auto;max-height:330px;object-fit:contain;margin:auto}.branding .custom-logo-link img{display:block;width:min(615px,100%);height:auto;max-height:330px;object-fit:contain;margin:auto}
.wordmark-fallback{font:normal 43px Georgia,serif;letter-spacing:.075em;color:var(--navy)}.hero-divider{display:flex;align-items:center;justify-content:center;gap:14px;color:#b58d4f;margin:-5px auto 22px}.hero-divider:before,.hero-divider:after{content:'';width:74px;height:1px;background:linear-gradient(90deg,transparent,#b58d4f)}.hero-divider:after{transform:rotate(180deg)}.hero-divider span{font-size:14px}
.service-nav-wrap{max-width:1160px;margin:0 auto;padding:0 0 20px}.service-nav-label{font-size:11px;text-transform:uppercase;letter-spacing:.29em;font-weight:700;color:#9b835f;margin:0 0 18px}
.service-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.service-tab{--card-bg:#eaf1e8;--card-accent:#779077;min-height:155px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;isolation:isolate;overflow:hidden;gap:11px;padding:22px 14px;text-decoration:none;background:linear-gradient(145deg,rgba(255,255,255,.64),transparent 78%),var(--card-bg);border:1px solid rgba(255,255,255,.8);border-radius:24px 24px 38px 24px;box-shadow:0 9px 27px rgba(26,47,61,.045);transition:transform .18s ease,box-shadow .18s ease}.service-item:nth-child(2) .service-tab{--card-bg:#f2e9e5;--card-accent:#ab8379;border-radius:24px 38px 24px 24px}.service-item:nth-child(3) .service-tab{--card-bg:#e7ecf3;--card-accent:#798eaa;border-radius:38px 24px 24px 24px}.service-tab:before{content:'';position:absolute;z-index:-1;width:170px;height:170px;border:1px solid color-mix(in srgb,var(--card-accent),transparent 75%);border-radius:50%;right:-81px;top:-105px}.service-tab:after{content:'';position:absolute;z-index:-1;width:100px;height:100px;background:radial-gradient(circle,var(--card-accent),transparent 70%);border-radius:50%;opacity:.105;bottom:-58px;left:-27px}.service-tab:hover{transform:translateY(-5px);box-shadow:0 15px 35px rgba(26,47,61,.09)}
.tab-symbol{width:45px;height:45px;border:1px solid color-mix(in srgb,var(--card-accent),transparent 55%);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.4);color:var(--card-accent)}.tab-symbol svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.service-name{font:normal clamp(14px,1.43vw,18px)/1.34 Georgia,'Times New Roman',serif;letter-spacing:.025em;color:#233e4f;text-transform:uppercase;max-width:245px;text-align:center}.service-indicator{font-size:12px;line-height:1;color:var(--card-accent)}
.main-wrapper{max-width:1180px;padding:0 24px;margin:0 auto}.profile-section{padding:64px 0 68px}.profile-heading{text-align:center;margin:0 auto 33px}.section-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.27em;color:var(--gold);font-weight:700}.section-title{font:normal clamp(39px,4vw,55px)/1.15 Georgia,'Times New Roman',serif;color:var(--navy);letter-spacing:-.018em;margin:12px 0 7px}.role-title{font-size:16px;color:#59758a;margin:0}.fine-rule{width:72px;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:22px auto 0}
.credentials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:1140px;margin:0 auto 31px}.credential{padding:28px 23px 27px;text-align:center;min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:start;gap:12px}.credential:not(:last-child){border-right:1px solid var(--line)}.credential-label{font-size:12px;line-height:1.4;font-weight:700;letter-spacing:.22em;color:#b18b50}.credential-copy{font:normal 16px/1.6 Georgia,'Times New Roman',serif;color:var(--navy)}.credential-copy .nextline{display:block;margin-top:5px}.credential-icon{width:5px;height:5px;transform:rotate(45deg);background:#b89664;margin:0 auto 1px}
.media-section{display:grid;grid-template-columns:0.82fr 1.18fr;gap:20px;max-width:870px;margin:0 auto}.media-placeholder{min-height:230px;border-radius:22px;border:1px dashed #d2c3ad;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:22px;position:relative;text-align:center;background:radial-gradient(circle at 30% 20%,#fffcf5,#f0e7d8);color:#7c756d}.media-placeholder.video-slot{background:radial-gradient(circle at 50% 20%,#f7f8f7,#e7ebeb)}.media-placeholder svg{height:36px;width:36px;fill:none;stroke:#ae956e;stroke-width:1.25;margin-bottom:15px}.media-placeholder .media-title{font:normal 18px Georgia,serif;color:var(--navy)}.media-placeholder small{font-size:10px;letter-spacing:.08em;color:#8a8377;text-transform:uppercase;margin-top:6px}.media-placeholder.with-image{padding:0;overflow:hidden;border:0;background:transparent}.portrait-image{width:100%;height:100%;object-fit:cover;display:block}.video-embed{border-radius:22px;min-height:230px;overflow:hidden}.video-embed iframe,.video-embed video{display:block;width:100%;height:100%;min-height:230px;border:0;object-fit:cover}
.footer-cta{text-align:center;padding:44px 24px 49px;border-top:1px solid var(--line);background:linear-gradient(180deg,#f8f5ef,#eee8dc)}.footer-cta h2{font:normal 28px Georgia,serif;color:var(--navy);margin:0 0 11px}.footer-cta p{font-size:13px;color:var(--sub);max-width:700px;margin:0 auto 19px}.phone-pill{display:inline-flex;gap:9px;align-items:center;padding:12px 26px;background:#fffcf8;border:1px solid #c3a26f;border-radius:999px;text-decoration:none;font-size:15px;letter-spacing:.035em;color:var(--navy)}.phone-pill:hover{background:white}.footer-cta p.footer-disclaimer{font-size:11px;margin:23px auto 0;line-height:1.5}.footer-bottom{font-size:11px;color:#8c867b;margin-top:24px}.inner-page{max-width:870px;margin:54px auto 85px;background:var(--ivory);border:1px solid var(--line);padding:55px clamp(20px,6vw,70px);text-align:center;min-height:260px;border-radius:18px}.inner-page h1{font:normal clamp(31px,4vw,49px)/1.2 Georgia,serif;color:var(--navy)}.inner-page p{color:var(--sub)}.return-home{color:var(--gold);font-size:13px;text-decoration:none}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
@media(max-width:850px){.site-hero{padding-left:18px;padding-right:18px}.site-menu{left:18px}.contact-quick{right:18px}.service-tabs{gap:12px}.service-tab{min-height:146px;padding:18px 8px}.service-name{font-size:13px}.credential{padding:26px 13px}.credential-copy{font-size:14px}.main-wrapper{padding:0 18px}}
@media(max-width:570px){.site-hero{padding:66px 12px 0}.site-menu{top:15px;left:13px}.site-menu summary{padding:9px 12px;font-size:10px}.contact-quick{top:25px;right:12px;font-size:10px}.branding{margin:0 auto}.brand-image{width:100%;max-width:520px}.hero-divider{margin:-2px auto 15px}.service-nav-label{margin-bottom:12px;font-size:10px}.service-tabs{gap:7px}.service-tab{min-height:130px;padding:16px 5px 14px;gap:8px;border-radius:19px 19px 27px 19px}.service-item:nth-child(2) .service-tab{border-radius:19px 27px 19px 19px}.service-item:nth-child(3) .service-tab{border-radius:27px 19px 19px 19px}.tab-symbol{width:35px;height:35px}.tab-symbol svg{width:19px;height:19px}.service-name{font-size:10px;letter-spacing:0;line-height:1.35}.service-indicator{font-size:10px}.main-wrapper{padding:0 14px}.profile-section{padding:44px 0 42px}.profile-heading{margin-bottom:27px}.section-title{font-size:41px}.role-title{font-size:14px}.credentials{grid-template-columns:1fr;max-width:440px;margin-bottom:25px}.credential{min-height:0;padding:19px 14px;gap:8px}.credential:not(:last-child){border-right:0;border-bottom:1px solid var(--line)}.credential-copy{font-size:15px}.media-section{grid-template-columns:1fr;gap:12px;max-width:440px}.media-placeholder,.video-embed{min-height:195px}.footer-cta{padding:36px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-tab{transition:none}}

/* v0.3: menu supports WordPress nested submenus without a full-width header. */
.primary-menu-list,.primary-menu-list .sub-menu{padding:0;margin:0;list-style:none}
.primary-menu-list>li{position:relative}
.primary-menu-list li>a,.primary-menu-fallback>a{display:block;text-decoration:none;font:normal 14px/1.4 Georgia,serif;padding:11px 14px;border-radius:10px}
.primary-menu-list li>a:hover,.primary-menu-list li>a:focus-visible,.primary-menu-fallback>a:hover{background:#f0eadc}
.primary-menu-list .sub-menu{display:none;margin:0 0 5px 12px;padding:0 0 4px 9px;border-left:1px solid #d7c5a5}
.primary-menu-list .sub-menu a{font-size:13px;padding:9px 10px}
.primary-menu-list li:hover>.sub-menu,.primary-menu-list li:focus-within>.sub-menu,.primary-menu-list li.submenu-open>.sub-menu{display:block}
.primary-menu-list li.menu-item-has-children>a{padding-right:37px}
.menu-child-toggle{position:absolute;right:5px;top:3px;width:30px;height:35px;background:transparent;border:0;cursor:pointer;color:var(--navy-soft)}
.menu-child-toggle[aria-expanded="true"]{transform:rotate(180deg)}
/* v0.3: service panels gain hoverable dropdowns, with explicit toggles for touch and keyboard. */
.service-item{position:relative;min-width:0;z-index:1}
.service-item:hover,.service-item:focus-within,.service-item.is-open{z-index:20}
.service-item .service-tab{height:100%}
.service-item:nth-child(1) .service-tab{--card-bg:#eaf1e8;--card-accent:#779077}
.service-item:nth-child(2) .service-tab{--card-bg:#f2e9e5;--card-accent:#ab8379}
.service-item:nth-child(3) .service-tab{--card-bg:#e7ecf3;--card-accent:#798eaa}
.service-dropdown-toggle{position:absolute;right:11px;bottom:8px;width:32px;height:32px;z-index:2;border:0;background:rgba(255,255,255,.66);border-radius:50%;color:var(--navy);font-size:24px;line-height:22px;cursor:pointer}
.service-dropdown-toggle[aria-expanded="true"]{background:white}
.service-submenu{position:absolute;top:100%;left:8px;right:8px;visibility:hidden;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .17s ease,transform .17s ease,visibility .17s ease;z-index:30;text-align:left}
.service-submenu-inner{background:var(--ivory);border:1px solid var(--line);box-shadow:0 16px 35px rgba(26,47,61,.16);padding:9px;border-radius:0 0 18px 18px}
.service-submenu a{display:block;font:normal 14px Georgia,serif;color:var(--navy);text-decoration:none;border-radius:8px;padding:11px 12px}
.service-submenu a:hover,.service-submenu a:focus-visible{background:#f2ecdf}
@media(hover:hover) and (pointer:fine){.service-item:hover .service-submenu{visibility:visible;opacity:1;transform:none;pointer-events:auto}}
.service-item:focus-within .service-submenu,.service-item.is-open .service-submenu{visibility:visible;opacity:1;transform:none;pointer-events:auto}
@media(max-width:570px){.service-dropdown-toggle{width:25px;height:25px;right:4px;bottom:5px;font-size:19px}.service-submenu{left:0;right:0}.service-submenu a{font-size:12px;padding:9px 8px}}

/* ARKANGEL INNER PAGES v0.4 */
.main-wrapper {
    padding: 55px 20px 80px;
}

.inner-page {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 5vw, 60px);
    background: #fffcf7;
    border: 1px solid #e4daca;
    border-radius: 28px;
    box-shadow: 0 12px 35px rgba(23,52,73,.05);
}

.inner-page .section-eyebrow {
    color: #aa854d;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
}

.inner-page h1 {
    font-family: Georgia, serif;
    font-size: clamp(32px, 5vw, 48px);
    color: #173449;
}

.inner-page h2 {
    font-family: Georgia, serif;
    color: #173449;
    font-size: 27px;
    margin-top: 32px;
}

.inner-page h3 {
    color: #aa854d;
    letter-spacing: .12em;
    font-size: 15px;
    margin-top: 26px;
}

.inner-page p {
    line-height: 1.85;
}

.inner-page a {
    text-underline-offset: 4px;
}

.inner-page .return-home {
    display: inline-block;
    margin-top: 30px;
    color: #173449;
}

/* ARKANGEL COMPACT HEADER v0.5 */

body:not(.home) .site-hero {
  height:105px;
  min-height:105px;
  padding:0;
  background:#f8f5ef;
  border-bottom:1px solid #e4dbcb;
}

body:not(.home) .hero-decoration,
body:not(.home) .hero-divider,
body:not(.home) .service-nav-wrap {
  display:none;
}

body:not(.home) .site-hero .branding {
  position:absolute;
  z-index:2;
  top:10px;
  right:max(185px,calc((100vw - 1200px)/2 + 170px));
  width:148px;
  margin:0;
}

body:not(.home) .site-hero .branding img,
body:not(.home) .site-hero .branding .custom-logo-link img {
  display:block;
  width:100%;
  height:auto;
  max-height:80px;
  object-fit:contain;
}

body:not(.home) .contact-quick {
  top:43px;
}

body:not(.home) .site-menu {
  top:28px;
}

@media (max-width:650px) {
  body:not(.home) .site-hero {
    height:149px;
    min-height:149px;
  }

  body:not(.home) .site-hero .branding {
    top:69px;
    left:50%;
    right:auto;
    transform:translateX(-50%);
    width:136px;
  }

  body:not(.home) .contact-quick {
    top:26px;
    right:13px;
  }

  body:not(.home) .site-menu {
    top:16px;
    left:13px;
  }
}

/* ARK ANGEL ABOUT COLUMNS v0.6 */
.ark-about-cols {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin:30px 0;
}
.ark-about-cols section {
    padding:25px 15px;
    text-align:center;
    border-top:1px solid #e4daca;
    border-bottom:1px solid #e4daca;
}
.ark-about-cols section+section {
    border-left:1px solid #e4daca;
}
.inner-page .ark-about-cols h3 {
    margin:0 0 15px;
}
.ark-about-cols p {
    margin:6px 0;
}
@media(max-width:700px) {
    .ark-about-cols {
        grid-template-columns:1fr;
    }
    .ark-about-cols section+section {
        border-left:0;
        border-top:0;
    }
}

/* ARK CONTACT v0.7 */
.ark-contact-intro {
    max-width:650px;
    margin:25px auto 35px;
    text-align:center;
    font-size:17px;
}
.ark-contact-card {
    max-width:590px;
    margin:0 auto;
    padding:35px 25px;
    text-align:center;
    background:#edf1ed;
    border:1px solid #dfdfd2;
    border-radius:25px;
}
.inner-page .ark-contact-card h2 {
    margin:0 0 8px;
}
.ark-contact-phone {
    display:inline-block;
    margin:22px 0;
    padding:12px 28px;
    background:#173449;
    color:#fff;
    border-radius:30px;
    font-size:20px;
    text-decoration:none;
}
.ark-contact-phone:hover {
    background:#31586b;
    color:#fff;
}
