/*
Theme Name: USA Friendship Profiles
Theme URI: https://whatssapp.bond/
Author: WPVibe
Description: Mobile-first editorial directory theme for USA Friendship Profiles.
Version: 1.2.0
WPVibe: yes
*/
:root{--usafp-bg:#f5f5f2;--usafp-paper:#fff;--usafp-green:#25d366;--usafp-green-deep:#137747;--usafp-forest:#173b2a;--usafp-ink:#252a27;--usafp-muted:#68736c;--usafp-line:#e1e7e2;--usafp-soft:#edf6ef;--usafp-shadow:0 18px 50px rgba(25,48,34,.08);--usafp-radius:22px;--usafp-width:1160px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:radial-gradient(ellipse at 80% 0%,rgba(37,211,102,.09),transparent 34%),var(--usafp-bg);color:var(--usafp-ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--usafp-green-deep)}
button,input,textarea,select{font:inherit}
img{max-width:100%;height:auto;display:block}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.usafp-skip:focus{position:fixed!important;top:12px;left:12px;width:auto;height:auto;margin:0;padding:10px 14px;clip:auto;background:#fff;z-index:9999;border-radius:10px;box-shadow:var(--usafp-shadow)}
.usafp-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(225,231,226,.9)}
.usafp-header-inner,.usafp-main,.usafp-footer-inner{width:min(var(--usafp-width),calc(100% - 44px));margin:0 auto}
.usafp-header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.usafp-brand{display:inline-flex;align-items:center;gap:11px;min-width:max-content;color:var(--usafp-forest)}
.usafp-brand-mark{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;border-radius:15px;background:var(--usafp-soft);color:var(--usafp-green-deep)}
.usafp-brand-mark svg{width:32px;height:32px}
.usafp-brand-copy{display:flex;flex-direction:column;line-height:1.1;gap:5px}
.usafp-brand-copy strong{font-size:16px;letter-spacing:-.04em;font-weight:850}
.usafp-brand-copy>span{font-size:9px;letter-spacing:.19em;font-weight:850;color:var(--usafp-muted)}
.usafp-primary-nav{display:flex;align-items:center;justify-content:center;gap:clamp(14px,2vw,28px)}
.usafp-primary-nav a{font-size:13px;font-weight:720;color:#48554d;white-space:nowrap;transition:color .18s ease}
.usafp-primary-nav a:hover,.usafp-primary-nav a:focus-visible{color:var(--usafp-green-deep)}
.usafp-header-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 17px;border-radius:999px;background:var(--usafp-forest);color:#fff;font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 6px 16px rgba(23,59,42,.13);transition:transform .18s ease,background .18s ease}
.usafp-header-cta:hover{background:var(--usafp-green-deep);color:#fff;transform:translateY(-1px)}
.usafp-main{min-height:calc(100vh - 250px);padding:38px 0 78px}.usafp-breadcrumb-wrap{margin:0 0 22px;color:var(--usafp-muted);font-size:12px}.rank-math-breadcrumb p{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:9px}.rank-math-breadcrumb a{color:var(--usafp-green-deep);font-weight:750}.rank-math-breadcrumb .separator{color:#9aa69d}
.usafp-home-hero{position:relative;isolation:isolate;overflow:hidden;margin:0 0 42px;padding:clamp(34px,6vw,72px);border:1px solid rgba(213,228,216,.95);border-radius:30px;background:linear-gradient(120deg,#fff 0%,#f4fbf5 72%,#e9f8ed 100%);box-shadow:var(--usafp-shadow)}
.usafp-home-hero:before{content:"";position:absolute;z-index:-1;right:-80px;top:-130px;width:360px;height:360px;border:1px solid rgba(37,211,102,.2);border-radius:50%;box-shadow:0 0 0 38px rgba(37,211,102,.045),0 0 0 78px rgba(37,211,102,.035)}
.usafp-home-hero:after{content:"";position:absolute;z-index:-1;right:10%;bottom:-130px;width:210px;height:210px;border-radius:50%;background:rgba(37,211,102,.07);filter:blur(1px)}
.usafp-eyebrow{margin:0 0 12px;color:var(--usafp-green-deep);font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.usafp-home-hero h1,.usafp-archive-head h1,.usafp-single-head h1,.usafp-page-head h1{max-width:800px;margin:0;color:var(--usafp-forest);font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.045em;line-height:1.05}
.usafp-home-hero h1{font-size:clamp(40px,6.8vw,76px)}
.usafp-hero-copy{max-width:650px;margin:20px 0 0;color:#5e6b62;font-size:clamp(16px,1.7vw,19px);line-height:1.75}
.usafp-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px}
.usafp-button-primary,.usafp-button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 20px;border-radius:999px;font-size:14px;font-weight:850;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.usafp-button-primary{background:var(--usafp-green);color:#082616;box-shadow:0 9px 22px rgba(37,211,102,.22)}
.usafp-button-primary:hover{background:#1fc45d;color:#082616;transform:translateY(-2px);box-shadow:0 13px 28px rgba(37,211,102,.28)}
.usafp-button-secondary{background:#fff;color:var(--usafp-forest);border:1px solid var(--usafp-line)}
.usafp-button-secondary:hover{color:var(--usafp-green-deep);transform:translateY(-2px)}
.usafp-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 20px}
.usafp-section-heading h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,3.5vw,36px);letter-spacing:-.035em;line-height:1.15;color:var(--usafp-forest)}
.usafp-section-heading p{margin:7px 0 0;color:var(--usafp-muted);font-size:14px}
.usafp-text-link{font-size:13px;font-weight:850;color:var(--usafp-green-deep);white-space:nowrap}
.usafp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.usafp-card{min-width:0;margin:0;background:var(--usafp-paper);border:1px solid rgba(225,231,226,.95);border-radius:var(--usafp-radius);overflow:hidden;box-shadow:0 8px 22px rgba(25,48,34,.055);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.usafp-card:hover{transform:translateY(-5px);border-color:#c8e7d0;box-shadow:0 18px 42px rgba(25,48,34,.12)}
.usafp-card-link{display:flex;flex-direction:column;height:100%;color:inherit}
.usafp-card-link:hover{color:inherit}
.usafp-card-media{aspect-ratio:4/4.7;overflow:hidden;background:linear-gradient(145deg,#eef4ef,#dce8df);position:relative}
.usafp-card-media:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(14,39,24,.13));pointer-events:none}
.usafp-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.usafp-card:hover .usafp-card-media img{transform:scale(1.035)}
.usafp-card-placeholder{display:grid;place-items:center;color:#6b7c70;font-family:Georgia,"Times New Roman",serif;font-size:24px}
.usafp-card-title{margin:0;padding:19px 20px 22px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(19px,2vw,23px);line-height:1.28;letter-spacing:-.025em;color:var(--usafp-forest)}
.usafp-card-link:hover .usafp-card-title{color:var(--usafp-green-deep)}
.usafp-archive-head{max-width:800px;margin:0 auto 34px;text-align:center;padding:30px 10px 0}
.usafp-archive-head h1{font-size:clamp(36px,5.5vw,58px)}
.usafp-intro{max-width:670px;margin:15px auto 0;color:var(--usafp-muted);font-size:17px}
.usafp-pagination{margin-top:34px}
.usafp-page-nav,.usafp-single-nav{display:flex;justify-content:space-between;align-items:center;gap:12px}
.usafp-page-nav a,.usafp-single-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border:1px solid var(--usafp-line);border-radius:999px;background:#fff;color:var(--usafp-forest);font-size:13px;font-weight:800;box-shadow:0 5px 14px rgba(25,48,34,.04);transition:transform .18s ease,border-color .18s ease}
.usafp-page-nav a:hover,.usafp-single-nav a:hover{transform:translateY(-2px);border-color:#b9dfc4;color:var(--usafp-green-deep)}
.usafp-single{max-width:850px;margin:0 auto}.usafp-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0 0 22px;color:var(--usafp-muted);font-size:12px;font-weight:700}.usafp-breadcrumbs a{color:var(--usafp-green-deep)}.usafp-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.usafp-single-head{margin:0 0 24px}
.usafp-single-head h1{font-size:clamp(35px,6vw,60px)}
.usafp-cta-wrap{margin:0 0 30px}
.usafp-reveal-button{width:100%;min-height:82px;border:0;border-radius:20px;padding:18px 24px;display:flex;align-items:center;justify-content:center;gap:13px;background:linear-gradient(110deg,#25d366,#35df79);color:#082414;font-size:clamp(18px,3vw,23px);font-weight:900;letter-spacing:-.02em;box-shadow:0 12px 28px rgba(37,211,102,.22);transition:transform .18s ease,box-shadow .18s ease}
.usafp-reveal-button:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(37,211,102,.28);color:#082414}
.usafp-reveal-button:focus-visible,.usafp-button-primary:focus-visible,.usafp-button-secondary:focus-visible,.usafp-header-cta:focus-visible{outline:3px solid rgba(19,119,71,.38);outline-offset:4px}
.usafp-whatsapp-icon{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center}
.usafp-whatsapp-icon svg{width:32px;height:32px}
.usafp-content,.usafp-full-article-content{background:var(--usafp-paper);border:1px solid var(--usafp-line);border-radius:var(--usafp-radius);padding:clamp(24px,4vw,44px);box-shadow:0 8px 26px rgba(25,48,34,.045);overflow-wrap:anywhere}
.usafp-content>*:first-child,.usafp-full-article-content>*:first-child{margin-top:0}
.usafp-content>*:last-child,.usafp-full-article-content>*:last-child{margin-bottom:0}
.usafp-content h2,.usafp-full-article-content h2{margin-top:1.9em;font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,3.2vw,32px);line-height:1.2;letter-spacing:-.03em;color:var(--usafp-forest)}
.usafp-content h3,.usafp-full-article-content h3{margin-top:1.5em;font-size:20px;line-height:1.3;color:var(--usafp-forest)}
.usafp-content p,.usafp-content li,.usafp-full-article-content p,.usafp-full-article-content li{color:#434d46}
.usafp-content a,.usafp-full-article-content a{color:var(--usafp-green-deep);text-decoration:underline;text-underline-offset:3px}
.usafp-content img,.usafp-full-article-content img{border-radius:15px}
.usafp-content figure,.usafp-full-article-content figure{margin:1.7em 0}
.usafp-content figcaption,.usafp-full-article-content figcaption{margin-top:8px;color:var(--usafp-muted);font-size:13px}
.usafp-content blockquote,.usafp-full-article-content blockquote{margin:1.5em 0;padding:1em 1.2em;border-left:4px solid var(--usafp-green);background:#f5faf6}
.usafp-content table,.usafp-full-article-content table{width:100%;border-collapse:collapse;font-size:14px}
.usafp-content th,.usafp-content td,.usafp-full-article-content th,.usafp-full-article-content td{padding:12px;border:1px solid var(--usafp-line);text-align:left;vertical-align:top}
.usafp-content th,.usafp-full-article-content th{background:var(--usafp-soft);color:var(--usafp-forest)}
.usafp-single-nav{margin-top:28px}
.usafp-page{max-width:850px;margin:0 auto}.usafp-page-head{max-width:850px;margin:0 auto 24px}.usafp-error-page h1{margin:0 auto 12px;max-width:650px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,5vw,52px);line-height:1.1;letter-spacing:-.04em;color:var(--usafp-forest)}.usafp-error-page>p:not(.usafp-eyebrow){max-width:520px;margin:0 auto;color:var(--usafp-muted)}.usafp-error-page .usafp-hero-actions{justify-content:center}
.usafp-page-head h1{font-size:clamp(36px,5.5vw,56px)}
.usafp-empty{max-width:650px;margin:40px auto;text-align:center;padding:46px 26px;background:#fff;border:1px solid var(--usafp-line);border-radius:var(--usafp-radius);box-shadow:var(--usafp-shadow)}
.usafp-empty h2{margin:0 0 8px;font-family:Georgia,"Times New Roman",serif;color:var(--usafp-forest)}
.usafp-empty p{margin:0;color:var(--usafp-muted)}
.usafp-footer{background:#fff;border-top:1px solid var(--usafp-line)}
.usafp-footer-inner{display:grid;grid-template-columns:1fr auto;gap:20px 40px;padding:34px 0 22px}
.usafp-footer-brand{max-width:440px}
.usafp-footer-title{display:inline-block;color:var(--usafp-forest);font-family:Georgia,"Times New Roman",serif;font-size:21px;font-weight:700;letter-spacing:-.03em}
.usafp-footer-brand p{margin:8px 0 0;color:var(--usafp-muted);font-size:13px;max-width:360px}
.usafp-footer-nav{display:flex;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;gap:12px 22px}
.usafp-footer-nav a{font-size:12px;font-weight:750;color:#526057}
.usafp-footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid var(--usafp-line);color:#7a857e;font-size:11px}
@media(max-width:900px){.usafp-header-inner{gap:16px}.usafp-primary-nav{gap:14px}.usafp-primary-nav a{font-size:12px}.usafp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.usafp-header-cta{padding:10px 14px}}
@media(max-width:680px){.usafp-header-inner,.usafp-main,.usafp-footer-inner{width:calc(100% - 28px)}.usafp-header-inner{min-height:auto;display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 0}.usafp-brand-mark{width:38px;height:38px;flex-basis:38px;border-radius:13px}.usafp-brand-mark svg{width:29px;height:29px}.usafp-brand-copy strong{font-size:14px}.usafp-brand-copy>span{font-size:8px}.usafp-header-cta{min-height:40px;font-size:12px}.usafp-primary-nav{grid-column:1/-1;justify-content:flex-start;overflow-x:auto;gap:18px;padding:4px 0 2px;scrollbar-width:none}.usafp-primary-nav::-webkit-scrollbar{display:none}.usafp-primary-nav a{font-size:12px}.usafp-main{padding:22px 0 48px}.usafp-home-hero{padding:32px 24px;border-radius:23px;margin-bottom:34px}.usafp-home-hero:before{right:-170px;top:-160px}.usafp-home-hero h1{font-size:clamp(38px,10vw,52px)}.usafp-hero-copy{font-size:15px;line-height:1.7}.usafp-hero-actions{align-items:stretch;flex-direction:column}.usafp-button-primary,.usafp-button-secondary{width:100%}.usafp-section-heading{align-items:flex-start;flex-direction:column;gap:8px}.usafp-grid{grid-template-columns:1fr;gap:16px}.usafp-card-media{aspect-ratio:4/3}.usafp-card-title{padding:17px 18px 19px;font-size:21px}.usafp-archive-head{padding-top:16px;margin-bottom:26px}.usafp-archive-head h1{font-size:clamp(34px,9vw,45px)}.usafp-intro{font-size:15px}.usafp-single-head h1,.usafp-page-head h1{font-size:clamp(34px,9vw,46px)}.usafp-reveal-button{min-height:72px;padding:16px 14px;font-size:19px}.usafp-content,.usafp-full-article-content{padding:22px 18px;border-radius:18px}.usafp-content h2,.usafp-full-article-content h2{font-size:26px}.usafp-page-nav a,.usafp-single-nav a{min-height:44px;padding:9px 13px;font-size:12px}.usafp-footer-inner{grid-template-columns:1fr;padding:28px 0 18px}.usafp-footer-nav{justify-content:flex-start;gap:12px 18px}.usafp-footer-bottom{flex-direction:column;gap:5px}.usafp-content table,.usafp-full-article-content table{display:block;overflow-x:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.usafp-search-form form{display:flex;gap:10px;max-width:560px;margin:22px auto 0}.usafp-search-form input[type=search]{flex:1;min-width:0;min-height:48px;padding:10px 15px;border:1px solid var(--usafp-line);border-radius:13px;background:#fff;color:var(--usafp-ink)}.usafp-search-form input[type=submit],.wpcf7-submit{min-height:48px;padding:10px 18px;border:0;border-radius:13px;background:var(--usafp-forest);color:#fff;font-weight:800;cursor:pointer}.wpcf7-form p{margin:0 0 17px}.wpcf7-form label{display:block;margin-bottom:7px;color:var(--usafp-forest);font-size:13px;font-weight:750}.wpcf7-form input[type=text],.wpcf7-form input[type=email],.wpcf7-form input[type=tel],.wpcf7-form textarea{display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--usafp-line);border-radius:12px;background:#fff;color:var(--usafp-ink);outline-offset:3px}.wpcf7-form textarea{min-height:150px;resize:vertical}.wpcf7-form input:focus,.wpcf7-form textarea:focus{border-color:var(--usafp-green-deep);outline:2px solid rgba(19,119,71,.13)}.wpcf7-submit:hover{background:var(--usafp-green-deep)}.wpcf7 form .wpcf7-response-output{margin:18px 0 0;padding:12px 14px;border-radius:12px;font-size:13px}.wpcf7-not-valid-tip{font-size:12px}.wpcf7-spinner{margin-left:10px}@media(max-width:680px){.usafp-search-form form{flex-direction:column}.usafp-search-form input[type=submit]{width:100%}}
