/* Johnson House Contact & Connect v1.0 — styles scoped to plugin */
#jhhs-contact{--jhcc-navy:#073643;--jhcc-deep:#052c39;--jhcc-teal:#087f86;--jhcc-gold:#e7b453;--jhcc-cream:#f8f6ef;--jhcc-text:#143b47;--jhcc-muted:#496774;position:relative;isolation:isolate;max-width:none;background:#fff;color:var(--jhcc-text);font:400 19px/1.7 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;box-sizing:border-box}
#jhhs-contact *,#jhhs-contact *::before,#jhhs-contact *::after{box-sizing:border-box}
#jhhs-contact a{color:inherit;text-decoration:none}
#jhhs-contact img{max-width:100%;height:auto}
#jhhs-contact p{font-size:19px;line-height:1.72;margin:0 0 16px}
#jhhs-contact h1,#jhhs-contact h2,#jhhs-contact h3{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.03em;margin:0;color:var(--jhcc-deep);line-height:1.1}
#jhhs-contact h1{font-size:clamp(45px,6vw,80px);max-width:900px}
#jhhs-contact h2{font-size:clamp(36px,4.2vw,59px)}
#jhhs-contact h2 em{color:var(--jhcc-teal);font-weight:400}
#jhhs-contact h3{font-size:clamp(27px,2.1vw,35px)}
#jhhs-contact .jhcc-width{width:min(1240px,calc(100% - 64px));margin-left:auto;margin-right:auto}
#jhhs-contact .jhcc-overline{margin:0 0 13px;font:800 15px/1.4 system-ui,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--jhcc-teal)}
#jhhs-contact .jhcc-gold{color:var(--jhcc-gold)}
#jhhs-contact .jhcc-btn{display:inline-flex;justify-content:center;align-items:center;gap:13px;min-height:52px;padding:15px 23px;border:2px solid transparent;border-radius:2px;font:800 17px/1.3 system-ui,Arial,sans-serif;transition:filter .15s,transform .15s;cursor:pointer}
#jhhs-contact .jhcc-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
#jhhs-contact .jhcc-btn:focus-visible,#jhhs-contact a:focus-visible,#jhhs-contact button:focus-visible,#jhhs-contact input:focus-visible,#jhhs-contact select:focus-visible,#jhhs-contact textarea:focus-visible{outline:4px solid #c79322;outline-offset:3px}
#jhhs-contact .jhcc-btn-gold{background:var(--jhcc-gold);color:#072e3a}
#jhhs-contact .jhcc-btn-teal{background:#066b73;color:white}
#jhhs-contact .jhcc-btn-outline{border-color:#13737a;color:#08515d;background:transparent}
#jhhs-contact .jhcc-btn-dark-outline{border-color:#e7b453;color:#f8edca;background:transparent}
#jhhs-contact .jhcc-hero{position:relative;background-color:var(--jhcc-deep);background-image:linear-gradient(90deg,rgba(3,45,57,.96) 0%,rgba(3,45,57,.91) 42%,rgba(3,45,57,.72) 75%,rgba(3,45,57,.61) 100%),var(--jhcc-hero-image);background-size:cover;background-position:center center;color:#fff;min-height:550px}
#jhhs-contact .jhcc-hero-inner{padding-top:45px;padding-bottom:70px}
#jhhs-contact .jhcc-crumbs{color:#e0e7e7;display:flex;gap:15px;margin-bottom:57px;font-size:16px}
#jhhs-contact .jhcc-crumbs a{border-bottom:1px solid #aac9c8}
#jhhs-contact .jhcc-hero h1{color:#fff;max-width:900px;margin-bottom:24px;text-wrap:balance}
#jhhs-contact .jhcc-hero-intro{font-size:23px;line-height:1.6;max-width:750px;color:#e4eff0;margin-bottom:33px}
#jhhs-contact .jhcc-hero-actions{display:flex;flex-wrap:wrap;gap:25px;align-items:center}
#jhhs-contact .jhcc-hero-link{font-weight:800;font-size:19px;color:#f3c46c;border-bottom:2px solid #f3c46c;padding-bottom:4px}
#jhhs-contact .jhcc-alert{display:flex;gap:18px;align-items:center;padding:21px 24px;background:#fff9ed;border-left:5px solid #cf9725;margin:22px auto;font-size:18px}
#jhhs-contact .jhcc-alert strong{color:#164656}
#jhhs-contact .jhcc-jump{position:sticky;top:0;z-index:12;background:#f6f3eb;border-bottom:1px solid #e1ded4}
#jhhs-contact .jhcc-jump .jhcc-width{display:flex;gap:32px;overflow-x:auto;white-space:nowrap;padding:18px 0}
#jhhs-contact .jhcc-jump a{font:800 16px/1.5 system-ui,Arial;color:#204f5d}
#jhhs-contact .jhcc-contact-strip{display:grid;grid-template-columns:1.2fr .9fr 1fr;gap:13px;padding:30px 0}
#jhhs-contact .jhcc-contact-line{border:1px solid #dbe4e0;padding:23px;background:#fcfcf8;display:flex;gap:15px;min-width:0}
#jhhs-contact .jhcc-contact-line p{font-size:17px;color:#486877;margin:6px 0 6px}
#jhhs-contact .jhcc-contact-line strong{font-size:18px;color:#1c4754;display:block}
#jhhs-contact .jhcc-contact-line a{font-size:17px;color:#08717b;font-weight:800;overflow-wrap:anywhere}
#jhhs-contact .jhcc-contact-line .jhcc-emphasis{font-size:19px;display:block;margin-top:9px}
#jhhs-contact .jhcc-icon{width:44px;height:44px;border-radius:50%;flex:none;background:#d8edef;display:grid;place-items:center;color:#006f7c;font-size:27px;font-family:Arial}
#jhhs-contact .jhcc-section{padding-top:72px;padding-bottom:55px;scroll-margin-top:70px}
#jhhs-contact .jhcc-section-heading{display:grid;grid-template-columns:1fr 380px;gap:35px;align-items:end;margin-bottom:33px}
#jhhs-contact .jhcc-section-heading>p{color:var(--jhcc-muted);margin:0}
#jhhs-contact .jhcc-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
#jhhs-contact .jhcc-choice{background:#f8f8f4;border:1px solid #e0e4de;border-top:4px solid var(--jhcc-teal);padding:28px;display:flex;flex-direction:column;gap:10px;min-height:323px}
#jhhs-contact .jhcc-choice:nth-child(even){border-top-color:#ddb15e}
#jhhs-contact .jhcc-choice-num{font:800 13px system-ui;letter-spacing:.13em;color:#0b7f86}
#jhhs-contact .jhcc-choice h3{font-size:31px;margin:6px 0}
#jhhs-contact .jhcc-choice p{font-size:18px;color:#526e75}
#jhhs-contact .jhcc-choice-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:20px}
#jhhs-contact .jhcc-choice-actions a{color:#08707b;font-size:17px;font-weight:800;text-decoration:underline;text-underline-offset:6px}
#jhhs-contact .jhcc-message-wrap{background:#f0f4f0;padding:65px 0;scroll-margin-top:80px}
#jhhs-contact .jhcc-message-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:55px}
#jhhs-contact .jhcc-message-intro>p{max-width:520px;color:#4b6973}
#jhhs-contact .jhcc-info{background:#fff;border-left:4px solid var(--jhcc-gold);padding:23px 25px;margin:32px 0}
#jhhs-contact .jhcc-info strong{font:700 24px Georgia,serif}
#jhhs-contact .jhcc-info p{font-size:17px;margin:12px 0}
#jhhs-contact .jhcc-info a,#jhhs-contact .jhcc-location-note a{color:#0d777e;text-decoration:underline;font-weight:800}
#jhhs-contact .jhcc-privacy-hint{font-size:17px!important}
#jhhs-contact .jhcc-form-panel{background:#fff;padding:30px;border:1px solid #e0e7e4;box-shadow:0 12px 36px rgba(6,44,57,.05)}
#jhhs-contact form{display:flex;flex-direction:column;gap:18px}
#jhhs-contact .jhcc-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
#jhhs-contact form label{font-weight:700;color:#174250;font-size:17px;display:block}
#jhhs-contact form label>span:not(.jhcc-checkbox>span){color:#a72b2b}
#jhhs-contact form input:not([type=checkbox]),#jhhs-contact form textarea,#jhhs-contact form select{display:block;width:100%;min-width:0;border:1px solid #9cbdbe;padding:14px 15px;font-size:18px;line-height:1.4;border-radius:3px;background:#fff;color:#163f4c;margin-top:8px;font-family:inherit;box-shadow:none}
#jhhs-contact form textarea{resize:vertical}
#jhhs-contact form .jhcc-checkbox{display:flex;align-items:start;gap:12px;font-size:16px;font-weight:500;color:#3d5a64;line-height:1.5}
#jhhs-contact .jhcc-checkbox input{width:22px;height:22px;flex:none;margin:3px 0 0;accent-color:#087f86}
#jhhs-contact .jhcc-checkbox strong{color:#a72b2b}
#jhhs-contact form button{align-self:flex-start}
#jhhs-contact .jhcc-form-footnote{font-size:15px;color:#526b73;line-height:1.6;margin:0}
#jhhs-contact .jhcc-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
#jhhs-contact .jhcc-success{border-left:5px solid #087f86;background:#eef8f4;color:#144a46;padding:17px 18px;font-size:18px}
#jhhs-contact .jhcc-newsletter .jhcc-section-heading{margin-bottom:28px}
#jhhs-contact .jhcc-news-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:23px}
#jhhs-contact .jhcc-subscribe-card,#jhhs-contact .jhcc-latest-card{padding:37px;background:#f6f3eb;border:1px solid #e4e1d8;min-width:0}
#jhhs-contact .jhcc-latest-card{position:relative;background:#0a414e;color:white;overflow:hidden}
#jhhs-contact .jhcc-latest-card h3{color:white;margin:10px 0 18px}
#jhhs-contact .jhcc-latest-card>p:not(.jhcc-overline){color:#d6e6e6}
#jhhs-contact .jhcc-latest-card .jhcc-overline{color:#edc36f}
#jhhs-contact .jhcc-subscribe-card h3{margin:0 0 15px}
#jhhs-contact .jhcc-subscribe-card>p{color:#526a70}
#jhhs-contact .jhcc-paper-mark{position:absolute;right:18px;top:18px;color:#f6f6ef18;font:bold 150px/1 Georgia,serif;pointer-events:none}
#jhhs-contact .jhcc-latest-card>*:not(.jhcc-paper-mark){position:relative}
#jhhs-contact .jhcc-issue-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}
#jhhs-contact .jhcc-latest-card .jhcc-btn-outline{border-color:#e8c77c;color:#ffe5a6}
#jhhs-contact .jhcc-quiet{font-size:17px;color:inherit;line-height:1.6;margin-top:15px}
#jhhs-contact .jhcc-archive-section{padding:70px 0;background:#faf9f5;scroll-margin-top:70px}
#jhhs-contact .jhcc-archive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
#jhhs-contact .jhcc-archive-link{border:1px solid #d7e0db;background:#fff;padding:21px;display:flex;justify-content:space-between;align-items:center;gap:15px;color:#1b4655}
#jhhs-contact .jhcc-archive-link strong{font-size:20px;line-height:1.4;display:block}
#jhhs-contact .jhcc-archive-link small{display:block;font-size:15px;color:#647a7d;margin-top:5px}
#jhhs-contact .jhcc-archive-empty{font-size:18px;background:#fff;padding:24px;border:1px solid #e2e5df}
#jhhs-contact .jhcc-archive-ctas{margin-top:28px;display:flex;gap:23px;align-items:center;flex-wrap:wrap}
#jhhs-contact .jhcc-archive-rss{font-weight:700;color:#08767e;text-decoration:underline;text-underline-offset:4px}
#jhhs-contact .jhcc-location{display:grid;grid-template-columns:1fr .85fr;gap:55px;align-items:center}
#jhhs-contact .jhcc-location h2{margin-bottom:23px}
#jhhs-contact .jhcc-location-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}
#jhhs-contact .jhcc-location-note{padding:32px;background:#e8f1ef;border:1px solid #d6e6e3}
#jhhs-contact .jhcc-location-note strong{font:700 27px Georgia,serif}
#jhhs-contact .jhcc-location-note p{margin:15px 0}
#jhhs-contact .jhcc-pressbar{padding:63px 0;background:#062f3c;color:white}
#jhhs-contact .jhcc-pressbar-inner{display:grid;grid-template-columns:1fr .7fr;gap:45px;align-items:center}
#jhhs-contact .jhcc-pressbar h2{color:white;max-width:750px}
#jhhs-contact .jhcc-pressbar h2 em{color:#efc57a}
#jhhs-contact .jhcc-pressbar p:not(.jhcc-overline){color:#d6e3e3;margin-top:15px}
#jhhs-contact .jhcc-press-actions{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
#jhhs-contact .jhcc-socials{display:flex;gap:18px;justify-content:space-between;padding:28px 0;flex-wrap:wrap}
#jhhs-contact .jhcc-socials>div{display:flex;flex-wrap:wrap;gap:25px}
#jhhs-contact .jhcc-socials a{font-size:17px;color:#087780;font-weight:700}
@media(max-width:1100px){#jhhs-contact .jhcc-section-heading{grid-template-columns:1fr 310px}#jhhs-contact .jhcc-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#jhhs-contact .jhcc-contact-strip{grid-template-columns:repeat(2,minmax(0,1fr))}#jhhs-contact .jhcc-message-grid{gap:25px}}
@media(max-width:820px){#jhhs-contact .jhcc-width{width:calc(100% - 40px)}#jhhs-contact .jhcc-section-heading,#jhhs-contact .jhcc-message-grid,#jhhs-contact .jhcc-news-grid,#jhhs-contact .jhcc-location,#jhhs-contact .jhcc-pressbar-inner{grid-template-columns:1fr}#jhhs-contact .jhcc-contact-strip{grid-template-columns:1fr}#jhhs-contact .jhcc-message-intro{max-width:640px}#jhhs-contact .jhcc-section{padding-top:55px;padding-bottom:45px}#jhhs-contact .jhcc-press-actions{flex-direction:row;flex-wrap:wrap}}
@media(max-width:610px){#jhhs-contact .jhcc-width{width:calc(100% - 32px)}#jhhs-contact .jhcc-hero{min-height:0;background-position:62% center}#jhhs-contact .jhcc-hero-inner{padding-top:30px;padding-bottom:55px}#jhhs-contact .jhcc-crumbs{margin-bottom:36px}#jhhs-contact h1{font-size:clamp(43px,10vw,60px)}#jhhs-contact .jhcc-hero-intro{font-size:20px}#jhhs-contact h2{font-size:clamp(37px,8vw,48px)}#jhhs-contact .jhcc-section-heading{gap:15px}#jhhs-contact .jhcc-choice-grid,#jhhs-contact .jhcc-form-row,#jhhs-contact .jhcc-archive-list{grid-template-columns:1fr}#jhhs-contact .jhcc-choice{min-height:0;padding:24px}#jhhs-contact .jhcc-form-panel,#jhhs-contact .jhcc-subscribe-card,#jhhs-contact .jhcc-latest-card{padding:22px}#jhhs-contact .jhcc-message-wrap{padding:45px 0}#jhhs-contact .jhcc-jump .jhcc-width{gap:20px}#jhhs-contact .jhcc-jump a{font-size:15px}#jhhs-contact .jhcc-hero-actions{gap:20px}#jhhs-contact .jhcc-contact-line{padding:20px}}
@media(prefers-reduced-motion:reduce){#jhhs-contact *,#jhhs-contact *::before,#jhhs-contact *::after{scroll-behavior:auto!important;transition:none!important}}
/* Keep sticky section navigation below the WordPress admin bar when logged in. */
body.admin-bar #jhhs-contact .jhcc-jump{top:32px}
@media(max-width:782px){body.admin-bar #jhhs-contact .jhcc-jump{top:46px}}
