/* =============================================
   JULIA GIURICICH — SHARED STYLES
   Warm Sunrise palette: orange, yellow, cream, dark brown
   ============================================= */

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#fffaf4;color:#231508;line-height:1.7}
h1,h2,h3,h4{font-family:Georgia,serif;font-weight:400;line-height:1.25;color:#231508}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}

:root{
  --orange:#d95f1a;
  --orange-dark:#b04a10;
  --orange-light:#fde8d4;
  --yellow:#f0a500;
  --yellow-light:#fff0c0;
  --yellow-dark:#a06800;
  --cream:#fffaf4;
  --cream2:#f7ede0;
  --text:#231508;
  --text-mid:#5a3820;
  --text-soft:#8a6040;
  --border:#e8c8a8;
}

/* ---- NAV ---- */
nav{background:#fff;border-bottom:4px solid var(--yellow);padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:62px;position:sticky;top:0;z-index:100}
.logo{font-family:Georgia,serif;font-size:19px;color:var(--text);letter-spacing:0.3px}
.logo span{color:var(--orange)}
.nav-links{display:flex;gap:1.75rem;align-items:center}
.nav-links a{font-size:13.5px;color:var(--text-mid);font-weight:600;transition:color 0.2s;padding:4px 0;border-bottom:2px solid transparent}
.nav-links a:hover{color:var(--orange)}
.nav-links a.active{color:var(--orange);border-bottom-color:var(--orange)}
.nav-btn{background:var(--orange);color:#fff;font-size:13px;padding:9px 22px;border-radius:22px;border:none;cursor:pointer;font-weight:700;transition:background 0.2s}
.nav-btn:hover{background:var(--orange-dark)}
@media(max-width:640px){.nav-links{display:none}}

/* ---- BUTTONS ---- */
.btn-white{background:#fff;color:var(--orange-dark);padding:13px 28px;border-radius:22px;font-size:14.5px;border:3px solid #fff;cursor:pointer;font-weight:800;letter-spacing:0.1px;transition:background 0.2s;display:inline-block;text-align:center}
.btn-white:hover{background:var(--yellow-light);border-color:var(--yellow-light)}
.btn-dark{background:#3a1e00;color:#fff;padding:13px 28px;border-radius:22px;font-size:14.5px;border:3px solid #3a1e00;cursor:pointer;font-weight:800;letter-spacing:0.1px;display:inline-block;text-align:center;transition:background 0.2s}
.btn-dark:hover{background:#5a3010;border-color:#5a3010}
.btn-orange{background:var(--orange);color:#fff;padding:13px 28px;border-radius:22px;font-size:14.5px;border:3px solid var(--orange);cursor:pointer;font-weight:800;display:inline-block;text-align:center;transition:background 0.2s}
.btn-orange:hover{background:var(--orange-dark);border-color:var(--orange-dark)}

/* ---- SECTIONS ---- */
.sec{padding:3rem 2rem}
.sec-inner{max-width:880px;margin:0 auto}
.sec-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--orange);margin-bottom:0.4rem;font-weight:700}
.sec-title{font-size:clamp(22px,3vw,30px);color:var(--text);margin-bottom:0.6rem}
.sec-sub{font-size:15px;color:var(--text-mid);margin-bottom:2rem;max-width:560px;line-height:1.8}
.divider{height:5px;background:linear-gradient(to right,var(--orange),var(--yellow),var(--orange-light))}
.bg-white{background:#fff}
.bg-cream{background:var(--cream2)}
.bg-orange{background:var(--orange)}
.bg-dark{background:#2d1e10}

/* ---- MID-PAGE CTA STRIP ---- */
.cta-strip{background:var(--yellow);padding:2.25rem 2rem;text-align:center}
.cta-strip h2{font-size:clamp(18px,3vw,26px);color:#3a1e00;margin-bottom:0.5rem}
.cta-strip p{font-size:14.5px;color:rgba(58,30,0,0.75);margin-bottom:1.25rem}
.cta-strip-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* ---- WHO GRID ---- */
.who-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.who-card{background:var(--orange-light);border-radius:14px;padding:1.3rem;border:2px solid #f0b888}
.who-card-icon{font-size:28px;margin-bottom:0.6rem}
.who-card h4{font-size:14px;margin-bottom:0.35rem;font-weight:700;color:var(--text)}
.who-card p{font-size:13px;color:var(--text-mid);line-height:1.55}

/* ---- SERVICE CARDS ---- */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.1rem}
.svc-card{background:#fff;border-radius:16px;padding:1.5rem;border:2px solid var(--border);transition:border-color 0.2s}
.svc-card:hover{border-color:var(--orange)}
.svc-top{display:flex;align-items:center;gap:12px;margin-bottom:0.85rem}
.svc-icon{width:44px;height:44px;border-radius:12px;background:var(--yellow-light);border:2px solid var(--yellow);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:21px}
.svc-card h3{font-size:15px;color:var(--text);font-weight:700}
.svc-card p{font-size:13px;color:var(--text-mid);line-height:1.65;margin-bottom:0.75rem}
.svc-list{list-style:none}
.svc-list li{font-size:13px;color:var(--text-mid);padding:3px 0;display:flex;gap:8px;align-items:flex-start}
.svc-list li::before{content:'✓';color:var(--orange);flex-shrink:0;font-weight:700;font-size:14px}

/* ---- ABOUT ---- */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
@media(max-width:600px){.about-grid{grid-template-columns:1fr}}
.about-text p{font-size:14.5px;color:var(--text-mid);margin-bottom:1rem;line-height:1.85}
.cert-wrap{display:flex;flex-wrap:wrap;gap:7px;margin-top:0.75rem}
.cert{background:var(--yellow-light);border:2px solid var(--yellow);color:var(--yellow-dark);font-size:12px;padding:4px 12px;border-radius:16px;font-weight:600}
.why-list{display:flex;flex-direction:column;gap:10px}
.why-item{display:flex;gap:12px;align-items:flex-start;background:var(--cream2);border-radius:12px;padding:0.9rem 1rem;border:2px solid var(--border)}
.why-emoji{font-size:22px;flex-shrink:0;margin-top:1px}
.why-item strong{font-size:13.5px;color:var(--text);display:block;margin-bottom:2px;font-weight:700}
.why-item span{font-size:12.5px;color:var(--text-soft);line-height:1.5}

/* ---- SKILLS ---- */
.skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.skill-col{background:#fff;border-radius:14px;padding:1rem 1.15rem;border:2px solid var(--border)}
.skill-col h4{font-size:12px;font-weight:700;color:var(--orange);margin-bottom:0.7rem;text-transform:uppercase;letter-spacing:1px}
.tag{display:inline-block;background:var(--orange-light);border:1.5px solid var(--border);color:var(--text-mid);font-size:12px;padding:3px 10px;border-radius:12px;margin:2px 2px 0 0;font-weight:500}

/* ---- TIMELINE ---- */
.tl{display:flex;flex-direction:column}
.tl-row{display:grid;grid-template-columns:130px 1fr;gap:1.25rem;padding:1.25rem 0;border-bottom:2px solid var(--border)}
.tl-row:last-child{border-bottom:none}
.tl-date{font-size:12px;color:var(--text-soft);text-align:right;padding-top:3px;font-weight:700}
.tl-role{font-size:14.5px;color:var(--text);font-weight:700;margin-bottom:2px}
.tl-org{font-size:12.5px;color:var(--orange);margin-bottom:5px;font-weight:600}
.tl-desc{font-size:13px;color:var(--text-mid);line-height:1.65}
@media(max-width:500px){.tl-row{grid-template-columns:1fr}.tl-date{text-align:left}}

/* ---- EDUCATION ---- */
.edu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.5rem}
.edu-card{background:#fff;border-radius:14px;padding:1.2rem;border:2px solid var(--border)}
.edu-deg{font-size:14px;color:var(--text);font-weight:700;margin-bottom:3px}
.edu-school{font-size:13px;color:var(--orange);margin-bottom:3px;font-weight:600}
.edu-year{font-size:12px;color:var(--yellow-dark);margin-bottom:6px;font-weight:700}
.edu-fields{font-size:12.5px;color:var(--text-soft);line-height:1.55}
.award-row{background:var(--yellow);border-radius:16px;padding:1.5rem 1.75rem;display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.award-emoji{font-size:34px;flex-shrink:0}
.award-title{font-size:16px;color:#3a1e00;font-weight:700}
.award-body{font-size:13px;color:rgba(58,30,0,0.75);margin-top:3px}
.award-year{margin-left:auto;font-size:20px;color:#3a1e00;font-weight:700;background:rgba(255,255,255,0.45);padding:6px 14px;border-radius:12px}

/* ---- CONTACT ---- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
@media(max-width:680px){.contact-grid{grid-template-columns:1fr}}
.contact-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--yellow-light);margin-bottom:0.4rem;font-weight:700}
.contact-title{font-size:clamp(20px,3vw,28px);color:#fff;margin-bottom:0.75rem;font-family:Georgia,serif;font-weight:400}
.contact-body{font-size:14px;color:rgba(255,255,255,0.88);margin-bottom:1.5rem;line-height:1.8}
.contact-info{display:flex;flex-direction:column;gap:11px}
.ci{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#fff}
.ci-icon{font-size:17px;flex-shrink:0}
.rate-box{background:rgba(0,0,0,0.18);border:2px solid rgba(255,255,255,0.25);border-radius:14px;padding:1.1rem 1.25rem;margin-top:1.25rem}
.rate-title{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--yellow-light);margin-bottom:0.5rem;font-weight:700}
.rate-val{font-size:26px;color:#fff;font-weight:700;margin-bottom:2px}
.rate-sub{font-size:12px;color:rgba(255,255,255,0.6)}
.free-tag{display:inline-block;background:#fff;color:var(--orange-dark);font-size:13px;padding:7px 20px;border-radius:22px;margin-top:12px;font-weight:800}

/* ---- FORM ---- */
.form-wrap{background:rgba(0,0,0,0.15);border:2px solid rgba(255,255,255,0.25);border-radius:16px;padding:1.6rem}
.form-title{font-size:15px;color:#fff;font-weight:700;margin-bottom:1.1rem}
.field{margin-bottom:13px}
.field label{display:block;font-size:12.5px;color:rgba(255,255,255,0.9);margin-bottom:5px;font-weight:600}
.field input,.field textarea,.field select{width:100%;background:rgba(255,255,255,0.15);border:2px solid rgba(255,255,255,0.35);border-radius:10px;color:#fff;font-size:13.5px;padding:10px 13px;font-family:sans-serif;outline:none;transition:border 0.2s}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#fff;background:rgba(255,255,255,0.22)}
.field input::placeholder,.field textarea::placeholder{color:rgba(255,255,255,0.45)}
.field select option{background:var(--orange-dark);color:#fff}
.field textarea{resize:vertical;min-height:90px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:420px){.form-row{grid-template-columns:1fr}}
.submit-btn{width:100%;background:#3a1e00;color:#fff;border:none;border-radius:22px;padding:14px;font-size:15px;cursor:pointer;margin-top:4px;font-weight:800;letter-spacing:0.1px;transition:background 0.2s}
.submit-btn:hover{background:#5a3010}
.submit-btn:disabled{opacity:0.6;cursor:not-allowed}
.form-msg{display:none;border-radius:10px;padding:0.85rem 1rem;text-align:center;font-size:13px;margin-top:10px;font-weight:600}
.form-msg.success{background:rgba(255,255,255,0.2);border:2px solid rgba(255,255,255,0.5);color:#fff}
.form-msg.error{background:rgba(100,0,0,0.2);border:2px solid rgba(255,160,140,0.5);color:#ffd0c0}

/* ---- FOOTER ---- */
footer{background:var(--orange-dark);padding:1.5rem 2rem;text-align:center}
.footer-inner{max-width:880px;margin:0 auto}
.footer-links{display:flex;justify-content:center;gap:1.75rem;margin-bottom:0.75rem;flex-wrap:wrap}
.footer-links a{font-size:13px;color:rgba(255,255,255,0.7);font-weight:500;transition:color 0.2s}
.footer-links a:hover{color:#fff}
.footer-copy{font-size:12px;color:rgba(255,255,255,0.4)}

/* ---- PAGE HERO VARIANTS ---- */
.hero-main{background:var(--orange);padding:3.5rem 2rem;display:grid;grid-template-columns:1fr 320px;gap:3rem;align-items:center}
@media(max-width:740px){.hero-main{grid-template-columns:1fr}}
.hero-page{background:var(--orange);padding:2.75rem 2rem;text-align:center}
.hero-eyebrow{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--yellow-light);margin-bottom:0.75rem;font-weight:700}
.hero-main h1,.hero-page h1{color:#fff;font-size:clamp(26px,4vw,42px);font-weight:400;margin-bottom:0.75rem}
.hero-main h1 em,.hero-page h1 em{font-style:italic;color:var(--yellow-light)}
.hero-desc{font-size:15px;color:rgba(255,255,255,0.9);margin-bottom:1.5rem;max-width:500px;line-height:1.85}
.hero-page .hero-desc{max-width:600px;margin-left:auto;margin-right:auto}
.hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:1.75rem}
.hero-page .hero-pills{justify-content:center}
.pill{background:rgba(255,255,255,0.18);border:1.5px solid rgba(255,255,255,0.4);color:#fff;font-size:12px;padding:5px 13px;border-radius:20px;font-weight:600}
.pill.star{background:var(--yellow);border-color:var(--yellow);color:#3a1e00;font-weight:700}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.hero-page .hero-btns{justify-content:center}

/* ---- PHOTO ---- */
.photo-block{display:flex;flex-direction:column;align-items:center;gap:1rem}
.photo-frame{width:215px;height:215px;border-radius:50%;border:5px solid #fff;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--orange-light);outline:4px solid var(--yellow)}
.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center top}
.photo-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-soft);text-align:center;padding:1rem;font-size:11.5px;line-height:1.5}
.photo-quote{background:rgba(255,255,255,0.97);border-left:4px solid var(--yellow);border-radius:0 10px 10px 0;padding:0.8rem 1rem;font-size:13px;font-style:italic;color:var(--text-mid);max-width:230px;font-family:Georgia,serif;line-height:1.6}
.stats-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.stat-box{background:rgba(255,255,255,0.97);border:2px solid rgba(255,255,255,0.6);border-radius:12px;padding:0.65rem 1rem;text-align:center}
.stat-n{font-size:22px;font-weight:700;color:var(--orange)}
.stat-l{font-size:11px;color:var(--text-soft);font-weight:600}

/* ---- FORM SCRIPT (shared) ---- */
