/*
Theme Name: SFG Sigorta
Theme URI: https://www.sfgsigorta.com
Author: D Plus Anatolia
Author URI: https://dplusanatolia.com
Description: SFG Sigorta Aracılık Hizmetleri A.Ş. için sıfırdan tasarlanmış kurumsal WordPress teması. Eklenti gerektirmez, hızlıdır, mobil uyumludur. 30 hizmet, 6 kategori, SSS akordeon ve kurumsal teklif formu dahildir.
Version: 2.4.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sfg-sigorta
Tags: custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, business, corporate
*/

/* ============================================
   DESIGN TOKENS
   ============================================ */
:root{
  /* Colors – Corporate Navy */
  --navy-900: #0a1f3a;
  --navy-800: #0f2a4f;
  --navy-700: #143560;
  --navy-600: #1b4583;
  --navy-500: #2563a0;
  --navy-100: #e8eff7;
  --navy-50:  #f4f7fb;

  --accent:     #d97706;   /* turuncu — vurgu */
  --accent-600: #b45309;
  --accent-50:  #fef3c7;

  --text:       #1a2638;
  --text-soft:  #475569;
  --text-muted: #64748b;
  --border:     #e2e8f0;
  --border-soft:#eef2f7;
  --white:      #ffffff;
  --bg-soft:    #f8fafc;

  --success: #059669;
  --error:   #dc2626;

  /* Spacing */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 96px;

  /* Typography */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-serif: Georgia, "Times New Roman", serif;

  --fs-xs: 0.78rem;
  --fs-sm: 0.88rem;
  --fs-base: 1rem;
  --fs-md: 1.08rem;
  --fs-lg: 1.22rem;
  --fs-xl: 1.44rem;
  --fs-2xl: 1.8rem;
  --fs-3xl: 2.3rem;
  --fs-4xl: 2.9rem;

  /* Radius */
  --r-sm: 4px;
  --r:    8px;
  --r-lg: 12px;
  --r-xl: 16px;

  /* Shadow */
  --sh-sm: 0 1px 2px rgba(10,31,58,.06);
  --sh:    0 2px 8px rgba(10,31,58,.08);
  --sh-md: 0 6px 20px rgba(10,31,58,.09);
  --sh-lg: 0 14px 40px rgba(10,31,58,.12);

  /* Transition */
  --t: 0.22s cubic-bezier(.4,0,.2,1);

  /* Layout */
  --container: 1200px;
}

/* ============================================
   RESET + BASE
   ============================================ */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--font-sans);
  font-size:var(--fs-base);
  line-height:1.65;
  color:var(--text);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy-600);text-decoration:none;transition:color var(--t)}
a:hover{color:var(--accent)}
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.22;margin:0 0 .5em;color:var(--navy-900);letter-spacing:-0.01em}
h1{font-size:var(--fs-4xl)}
h2{font-size:var(--fs-3xl)}
h3{font-size:var(--fs-xl)}
h4{font-size:var(--fs-lg)}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.4rem}
li{margin-bottom:.3em}
blockquote{
  border-left:4px solid var(--navy-600);
  padding:var(--sp-4) var(--sp-5);
  margin:1.2em 0;
  background:var(--navy-50);
  color:var(--text-soft);
  font-style:italic;
  border-radius:0 var(--r) var(--r) 0;
}
hr{border:0;border-top:1px solid var(--border);margin:var(--sp-7) 0}
table{width:100%;border-collapse:collapse;margin:1em 0}
th,td{padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);text-align:left}
th{background:var(--bg-soft);color:var(--navy-900);font-weight:600}

/* ============================================
   LAYOUT
   ============================================ */
.container{
  width:100%;
  max-width:var(--container);
  margin:0 auto;
  padding:0 var(--sp-5);
}
.site-main{min-height:60vh}
.section{padding:var(--sp-8) 0}
.section-tight{padding:var(--sp-7) 0}
.section-alt{background:var(--bg-soft)}
.section-dark{background:var(--navy-900);color:#d4dbe6}
.section-dark h1,.section-dark h2,.section-dark h3{color:var(--white)}

.section-title{text-align:center;margin-bottom:var(--sp-7)}
.section-title .eyebrow{
  display:inline-block;
  font-size:var(--fs-xs);
  font-weight:700;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--accent);
  margin-bottom:var(--sp-2);
}
.section-title h2{margin:0;position:relative}
.section-title p{
  color:var(--text-soft);
  max-width:620px;
  margin:var(--sp-3) auto 0;
  font-size:var(--fs-md);
}

/* ============================================
   HEADER
   ============================================ */
.site-header{
  background:var(--white);
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  z-index:1000;
  box-shadow:var(--sh-sm);
}
.header-top{
  background:var(--navy-900);
  color:#a8b5c8;
  font-size:var(--fs-xs);
  padding:6px 0;
}
.header-top-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--sp-4);
}
.header-top a{color:#cbd5e1}
.header-top a:hover{color:var(--accent)}
.header-top-info{display:flex;gap:var(--sp-5);flex-wrap:wrap}
.header-top-info span{display:flex;align-items:center;gap:6px}

.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--sp-4) 0;
  gap:var(--sp-5);
}
.site-branding{display:flex;align-items:center}
.site-branding a{
  display:flex;
  align-items:center;
  gap:var(--sp-3);
  color:var(--navy-900);
  font-weight:700;
}
.site-branding img{max-height:56px;width:auto}
.site-title{margin:0;font-size:var(--fs-xl);line-height:1.1;color:var(--navy-900)}
.site-description{
  display:block;
  font-size:var(--fs-xs);
  color:var(--text-muted);
  font-weight:400;
  letter-spacing:0.04em;
  text-transform:uppercase;
  margin-top:2px;
}

/* Navigation */
.main-nav{display:flex;align-items:center}
.main-nav ul{
  list-style:none;
  margin:0;padding:0;
  display:flex;
  gap:var(--sp-1);
}
.main-nav li{margin:0;position:relative}
.main-nav a{
  display:block;
  padding:10px 16px;
  color:var(--navy-900);
  font-weight:500;
  font-size:var(--fs-sm);
  border-radius:var(--r-sm);
  transition:all var(--t);
}
.main-nav a:hover,
.main-nav .current-menu-item>a,
.main-nav .current_page_item>a{
  background:var(--navy-50);
  color:var(--navy-700);
}
.main-nav li ul{
  position:absolute;
  top:100%;
  left:0;
  min-width:260px;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--r);
  flex-direction:column;
  gap:0;
  padding:var(--sp-2) 0;
  box-shadow:var(--sh-md);
  opacity:0;
  visibility:hidden;
  transform:translateY(4px);
  transition:all var(--t);
}
.main-nav li:hover>ul,.main-nav li:focus-within>ul{
  opacity:1;visibility:visible;transform:translateY(0);
}
.main-nav li ul a{padding:10px 18px;font-size:var(--fs-sm);border-radius:0}
.main-nav li ul a:hover{background:var(--bg-soft)}

.header-cta{display:flex;align-items:center;gap:var(--sp-3)}

.menu-toggle{
  display:none;
  background:transparent;
  border:1px solid var(--border);
  padding:10px 12px;
  border-radius:var(--r-sm);
  cursor:pointer;
}
.menu-toggle span{display:block;width:22px;height:2px;background:var(--navy-900);margin:4px 0;transition:.25s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ============================================
   BUTTONS
   ============================================ */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--sp-2);
  padding:12px 24px;
  background:var(--accent);
  color:var(--white);
  border-radius:var(--r-sm);
  font-weight:600;
  font-size:var(--fs-sm);
  border:2px solid var(--accent);
  cursor:pointer;
  transition:all var(--t);
  text-align:center;
  white-space:nowrap;
}
.btn:hover{background:var(--accent-600);border-color:var(--accent-600);color:var(--white);transform:translateY(-1px);box-shadow:var(--sh)}
.btn-primary{background:var(--navy-700);border-color:var(--navy-700)}
.btn-primary:hover{background:var(--navy-800);border-color:var(--navy-800)}
.btn-outline{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.6)}
.btn-outline:hover{background:var(--white);color:var(--navy-900);border-color:var(--white)}
.btn-ghost{background:transparent;color:var(--navy-700);border:2px solid var(--border)}
.btn-ghost:hover{background:var(--navy-50);border-color:var(--navy-100);color:var(--navy-800);transform:none}
.btn-sm{padding:8px 16px;font-size:var(--fs-xs)}
.btn-lg{padding:16px 32px;font-size:var(--fs-md)}
.btn-block{display:flex;width:100%}

/* ============================================
   HERO
   ============================================ */
.hero{
  position:relative;
  background:linear-gradient(135deg,var(--navy-900) 0%,var(--navy-700) 60%,var(--navy-600) 100%);
  color:var(--white);
  padding:var(--sp-9) 0 var(--sp-8);
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  top:-10%;right:-10%;
  width:60%;height:120%;
  background:radial-gradient(circle at 30% 50%,rgba(217,119,6,.18) 0%,transparent 60%);
  pointer-events:none;
}
.hero::after{
  content:"";
  position:absolute;
  bottom:-1px;left:0;right:0;
  height:60px;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 60' preserveAspectRatio='none'><path d='M0,30 Q300,60 600,30 T1200,30 L1200,60 L0,60 Z' fill='%23ffffff'/></svg>") no-repeat bottom/cover;
  pointer-events:none;
}
.hero-grid{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:var(--sp-8);
  align-items:center;
  position:relative;
  z-index:2;
}
.hero-content h1{
  color:var(--white);
  font-size:var(--fs-4xl);
  margin-bottom:var(--sp-4);
  line-height:1.15;
}
.hero-content .hero-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:var(--sp-2);
  font-size:var(--fs-xs);
  font-weight:700;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:var(--accent-50);
  background:rgba(217,119,6,.15);
  padding:6px 14px;
  border-radius:100px;
  margin-bottom:var(--sp-4);
  border:1px solid rgba(217,119,6,.3);
}
.hero-content p{
  font-size:var(--fs-md);
  color:#cbd5e1;
  max-width:560px;
  margin-bottom:var(--sp-5);
}
.hero-actions{display:flex;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-6)}
.hero-features{
  display:flex;
  gap:var(--sp-5);
  flex-wrap:wrap;
  padding-top:var(--sp-5);
  border-top:1px solid rgba(255,255,255,.12);
}
.hero-features .item{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:#cbd5e1}
.hero-features .item .tick{
  width:22px;height:22px;
  background:rgba(217,119,6,.2);
  color:var(--accent-50);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.7rem;
  flex-shrink:0;
}

/* Quote form box */
.quote-card{
  background:var(--white);
  color:var(--text);
  border-radius:var(--r-lg);
  padding:var(--sp-6);
  box-shadow:var(--sh-lg);
  position:relative;
}
.quote-card::before{
  content:"";
  position:absolute;
  top:-12px;left:24px;
  width:48px;height:48px;
  background:var(--accent);
  border-radius:var(--r);
  z-index:-1;
  transform:rotate(12deg);
}
.quote-card h3{color:var(--navy-900);margin:0 0 var(--sp-2)}
.quote-card .quote-subtitle{color:var(--text-soft);font-size:var(--fs-sm);margin-bottom:var(--sp-5)}
.quote-card .form-row{margin-bottom:var(--sp-3)}
.quote-card label{
  display:block;
  font-size:var(--fs-xs);
  font-weight:600;
  color:var(--text);
  margin-bottom:6px;
  letter-spacing:0.02em;
}
.quote-card input,.quote-card select,.quote-card textarea{
  width:100%;
  padding:11px 14px;
  font-family:inherit;
  font-size:var(--fs-sm);
  border:1px solid var(--border);
  border-radius:var(--r-sm);
  background:var(--white);
  color:var(--text);
  transition:border-color var(--t),box-shadow var(--t);
}
.quote-card input:focus,.quote-card select:focus,.quote-card textarea:focus{
  outline:none;
  border-color:var(--navy-600);
  box-shadow:0 0 0 3px rgba(27,69,131,.12);
}

/* ============================================
   CARDS (services grid)
   ============================================ */
.cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:var(--sp-5);
}
.cards.cards-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.cards.cards-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.cards.cards-fixed-3{grid-template-columns:repeat(3,1fr)}

.card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:var(--sp-6);
  transition:all var(--t);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
}
.card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:var(--accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .3s;
}
.card:hover{
  border-color:var(--navy-100);
  box-shadow:var(--sh-md);
  transform:translateY(-3px);
}
.card:hover::before{transform:scaleX(1)}
.card-icon{
  width:56px;
  height:56px;
  border-radius:var(--r);
  background:var(--navy-50);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.7rem;
  color:var(--navy-700);
  margin-bottom:var(--sp-4);
  transition:all var(--t);
}
.card:hover .card-icon{background:var(--navy-700);color:var(--white);transform:scale(1.05)}
.card h3{color:var(--navy-900);margin-bottom:var(--sp-2);font-size:var(--fs-lg)}
.card p{color:var(--text-soft);font-size:var(--fs-sm);flex:1;line-height:1.65}
.card .card-link{
  margin-top:var(--sp-4);
  color:var(--accent);
  font-weight:600;
  font-size:var(--fs-sm);
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.card .card-link::after{content:"→";transition:transform .2s;display:inline-block}
.card:hover .card-link::after{transform:translateX(4px)}

/* Feature card – more compact */
.feature-card{text-align:center;padding:var(--sp-5) var(--sp-4)}
.feature-card .card-icon{margin:0 auto var(--sp-3)}
.feature-card h3{font-size:var(--fs-md)}
.feature-card p{font-size:var(--fs-sm)}

/* ============================================
   PAGE HEADER (breadcrumb)
   ============================================ */
.page-header{
  background:linear-gradient(180deg,var(--navy-900),var(--navy-800));
  color:var(--white);
  padding:var(--sp-8) 0 var(--sp-7);
  border-bottom:1px solid var(--navy-800);
  position:relative;
  overflow:hidden;
}
.page-header::after{
  content:"";
  position:absolute;
  right:-50px;top:-50px;
  width:280px;height:280px;
  background:radial-gradient(circle,rgba(217,119,6,.15),transparent 70%);
  pointer-events:none;
}
.page-header h1{color:var(--white);margin:0 0 var(--sp-3);position:relative;z-index:1}
.breadcrumbs{
  font-size:var(--fs-sm);
  color:#a8b5c8;
  position:relative;
  z-index:1;
}
.breadcrumbs a{color:#cbd5e1;border-bottom:1px dotted transparent;transition:all var(--t)}
.breadcrumbs a:hover{color:var(--accent-50);border-color:var(--accent-50)}
.breadcrumbs .sep{margin:0 var(--sp-2);color:#4a5b75}

/* ============================================
   ENTRY CONTENT
   ============================================ */
.entry-content{
  padding:var(--sp-7) 0;
  font-size:var(--fs-base);
  line-height:1.8;
  color:var(--text);
}
.entry-content h2{margin-top:2em;color:var(--navy-900);font-size:var(--fs-2xl)}
.entry-content h3{margin-top:1.6em;color:var(--navy-700);font-size:var(--fs-xl)}
.entry-content h4{margin-top:1.4em;color:var(--navy-700)}
.entry-content ul li,.entry-content ol li{margin-bottom:.5em}
.entry-content img{border-radius:var(--r);margin:1.2em 0}
.entry-content a{text-decoration:underline;text-decoration-color:var(--navy-100);text-underline-offset:3px}
.entry-content a:hover{text-decoration-color:var(--accent)}

/* ============================================
   ARTICLE + SIDEBAR LAYOUT
   ============================================ */
.layout-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:var(--sp-7);
  padding:var(--sp-7) 0;
}
.main-col{min-width:0}
.sidebar{font-size:var(--fs-sm)}
.sidebar .widget{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--r);
  padding:var(--sp-5);
  margin-bottom:var(--sp-5);
}
.sidebar .widget-dark{background:var(--navy-800);color:#cbd5e1;border-color:var(--navy-800)}
.sidebar .widget-dark h3{color:var(--white);border-bottom-color:var(--accent)}
.sidebar .widget-dark p{color:#cbd5e1}
.sidebar .widget h3{
  font-size:var(--fs-md);
  margin:0 0 var(--sp-4);
  padding-bottom:var(--sp-3);
  border-bottom:2px solid var(--accent);
  color:var(--navy-900);
}
.sidebar ul{list-style:none;padding:0;margin:0}
.sidebar li{padding:8px 0;border-bottom:1px solid var(--border-soft)}
.sidebar li:last-child{border-bottom:0}
.sidebar li a{color:var(--text);font-size:var(--fs-sm);display:flex;align-items:center;gap:8px}
.sidebar li a::before{content:"›";color:var(--accent);font-weight:700;transition:transform var(--t)}
.sidebar li a:hover{color:var(--accent)}
.sidebar li a:hover::before{transform:translateX(3px)}
.sidebar li.current a{color:var(--accent);font-weight:600}

/* ============================================
   POST LIST
   ============================================ */
.post-list{display:grid;gap:var(--sp-5)}
.post-item{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:var(--sp-5) var(--sp-6);
  transition:all var(--t);
}
.post-item:hover{border-color:var(--navy-100);box-shadow:var(--sh)}
.post-item h2{margin:0 0 var(--sp-2);font-size:var(--fs-xl)}
.post-item h2 a{color:var(--navy-900)}
.post-item h2 a:hover{color:var(--accent)}
.post-meta{color:var(--text-muted);font-size:var(--fs-xs);margin-bottom:var(--sp-3);display:flex;gap:var(--sp-4);flex-wrap:wrap}
.post-meta span{display:inline-flex;align-items:center;gap:4px}
.post-excerpt{color:var(--text-soft);font-size:var(--fs-sm);margin-bottom:var(--sp-3);line-height:1.7}
.read-more{color:var(--accent);font-weight:600;font-size:var(--fs-sm);display:inline-flex;align-items:center;gap:4px}
.read-more::after{content:"→";transition:transform var(--t)}
.read-more:hover::after{transform:translateX(3px)}

/* ============================================
   FAQ ACCORDION
   ============================================ */
.faq-wrap{max-width:880px;margin:0 auto}
.faq-group{margin-bottom:var(--sp-6)}
.faq-group-title{
  background:var(--navy-700);
  color:var(--white);
  padding:var(--sp-4) var(--sp-5);
  border-radius:var(--r);
  font-size:var(--fs-lg);
  margin:0 0 var(--sp-3);
  display:flex;
  align-items:center;
  gap:var(--sp-3);
}
.faq-group-title .icon{
  width:36px;height:36px;
  background:rgba(255,255,255,.12);
  border-radius:var(--r-sm);
  display:inline-flex;align-items:center;justify-content:center;
  font-size:1.1rem;
}
.faq-item{
  border:1px solid var(--border);
  border-radius:var(--r);
  margin-bottom:var(--sp-2);
  background:var(--white);
  overflow:hidden;
  transition:border-color var(--t);
}
.faq-item[open]{border-color:var(--navy-100);box-shadow:var(--sh-sm)}
.faq-item summary{
  padding:var(--sp-4) var(--sp-5);
  padding-right:56px;
  font-weight:600;
  color:var(--navy-900);
  cursor:pointer;
  list-style:none;
  position:relative;
  font-size:var(--fs-sm);
  transition:background var(--t);
}
.faq-item summary:hover{background:var(--bg-soft)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"+";
  position:absolute;
  right:var(--sp-4);top:50%;
  transform:translateY(-50%);
  width:28px;height:28px;
  background:var(--accent-50);
  color:var(--accent);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;font-weight:700;
  transition:all var(--t);
}
.faq-item[open] summary::after{content:"−";background:var(--accent);color:var(--white)}
.faq-answer{
  padding:0 var(--sp-5) var(--sp-4);
  color:var(--text-soft);
  font-size:var(--fs-sm);
  line-height:1.8;
  border-top:1px solid var(--border-soft);
  padding-top:var(--sp-4);
}
.faq-answer p:last-child{margin-bottom:0}

/* ============================================
   CONTACT
   ============================================ */
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:var(--sp-8);
  align-items:start;
}
.contact-info h3{margin-top:0}
.contact-info .info-item{
  display:flex;
  gap:var(--sp-4);
  align-items:flex-start;
  padding:var(--sp-4) 0;
  border-bottom:1px solid var(--border-soft);
}
.contact-info .info-item:last-child{border-bottom:0}
.info-icon{
  width:48px;height:48px;
  background:var(--navy-50);
  color:var(--navy-700);
  border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:1.2rem;
}
.info-item .info-label{display:block;color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:2px}
.info-item .info-value{color:var(--text);font-size:var(--fs-base);font-weight:500}

.contact-form{
  background:var(--white);
  padding:var(--sp-6);
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  box-shadow:var(--sh);
}
.contact-form h3{margin-top:0}
.form-row{margin-bottom:var(--sp-4)}
.form-row.half{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}
.form-row label{
  display:block;
  margin-bottom:6px;
  font-weight:600;
  font-size:var(--fs-xs);
  color:var(--navy-900);
  letter-spacing:.02em;
}
.form-row .req{color:var(--error)}
.form-row input,.form-row select,.form-row textarea{
  width:100%;
  padding:11px 14px;
  border:1px solid var(--border);
  border-radius:var(--r-sm);
  font-size:var(--fs-sm);
  font-family:inherit;
  background:var(--white);
  color:var(--text);
  transition:all var(--t);
}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{
  outline:none;
  border-color:var(--navy-600);
  box-shadow:0 0 0 3px rgba(27,69,131,.12);
}
.form-row textarea{resize:vertical;min-height:120px}
.form-notice{
  padding:var(--sp-3) var(--sp-4);
  border-radius:var(--r-sm);
  margin-bottom:var(--sp-4);
  font-size:var(--fs-sm);
  display:flex;
  align-items:flex-start;
  gap:var(--sp-2);
}
.form-notice.success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}
.form-notice.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}

/* ============================================
   CTA BAND
   ============================================ */
.cta-band{
  background:linear-gradient(135deg,var(--navy-900),var(--navy-700));
  color:var(--white);
  padding:var(--sp-8) 0;
  position:relative;
  overflow:hidden;
  text-align:center;
}
.cta-band::before{
  content:"";
  position:absolute;
  top:-40%;right:-20%;
  width:800px;height:800px;
  background:radial-gradient(circle,rgba(217,119,6,.12),transparent 60%);
  pointer-events:none;
}
.cta-band h2{color:var(--white);margin:0 0 var(--sp-3);position:relative}
.cta-band p{color:#cbd5e1;max-width:620px;margin:0 auto var(--sp-5);font-size:var(--fs-md);position:relative}
.cta-band .btn-group{display:flex;gap:var(--sp-3);justify-content:center;flex-wrap:wrap;position:relative}

/* ============================================
   STATS (optional – on homepage)
   ============================================ */
.stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:var(--sp-5);
  text-align:center;
}
.stat .num{
  font-size:var(--fs-3xl);
  font-weight:800;
  color:var(--navy-900);
  display:block;
  line-height:1;
  margin-bottom:var(--sp-2);
}
.stat .label{
  font-size:var(--fs-sm);
  color:var(--text-soft);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:600;
}

/* ============================================
   FOOTER
   ============================================ */
.site-footer{
  background:var(--navy-900);
  color:#a8b5c8;
  padding-top:var(--sp-8);
  margin-top:var(--sp-8);
  font-size:var(--fs-sm);
}
.footer-grid{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1.3fr;
  gap:var(--sp-6);
  padding-bottom:var(--sp-7);
}
.footer-col h4{color:var(--white);margin-bottom:var(--sp-4);font-size:var(--fs-md)}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col li{margin-bottom:8px}
.footer-col a{color:#a8b5c8;transition:color var(--t)}
.footer-col a:hover{color:var(--accent)}
.footer-col p{color:#a8b5c8;line-height:1.7;margin-bottom:1em}
.footer-contact-item{display:flex;gap:var(--sp-3);margin-bottom:var(--sp-3)}
.footer-contact-item .icon{
  width:32px;height:32px;background:rgba(255,255,255,.06);
  border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;
}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding:var(--sp-4) 0;
  text-align:center;
  font-size:var(--fs-xs);
  color:#6b7a93;
}
.footer-bottom p{margin:3px 0}
.footer-bottom a{color:#a8b5c8}
.footer-credits{font-size:var(--fs-xs);color:#6b7a93;opacity:.9}
.footer-credits strong{color:#a8b5c8;font-weight:600}

/* ============================================
   UTILITIES
   ============================================ */
.to-top{
  position:fixed;
  right:20px;bottom:20px;
  width:46px;height:46px;
  background:var(--navy-700);
  color:var(--white);
  border:0;
  border-radius:50%;
  font-size:1.3rem;
  cursor:pointer;
  opacity:0;visibility:hidden;
  transition:all .3s;
  z-index:900;
  box-shadow:var(--sh-md);
}
.to-top.show{opacity:1;visibility:visible}
.to-top:hover{background:var(--accent)}

.pagination{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:var(--sp-6) 0}
.pagination a,.pagination span{
  padding:9px 14px;background:var(--white);border:1px solid var(--border);
  border-radius:var(--r-sm);color:var(--navy-900);font-size:var(--fs-sm);font-weight:600;
}
.pagination a:hover,.pagination .current{background:var(--navy-700);color:var(--white);border-color:var(--navy-700)}

.alignleft{float:left;margin:0 1.5em 1em 0}
.alignright{float:right;margin:0 0 1em 1.5em}
.aligncenter{display:block;margin:1em auto}
.wp-caption{max-width:100%}
.wp-caption-text{text-align:center;font-size:var(--fs-xs);color:var(--text-muted);margin-top:.4em}

.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 960px){
  :root{--fs-4xl:2.2rem;--fs-3xl:1.8rem;--fs-2xl:1.5rem}
  .hero-grid{grid-template-columns:1fr;gap:var(--sp-6)}
  .layout-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .header-top-info{flex-direction:column;gap:2px;font-size:.7rem}
  .cards.cards-fixed-3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 720px){
  .menu-toggle{display:block}
  .header-cta .btn{display:none}
  .main-nav{
    position:absolute;top:100%;left:0;right:0;
    background:var(--white);
    border-bottom:1px solid var(--border);
    display:none;
    box-shadow:var(--sh-md);
  }
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;gap:0;padding:var(--sp-3) 0}
  .main-nav li{width:100%}
  .main-nav a{padding:14px 24px;border-radius:0}
  .main-nav li ul{position:static;box-shadow:none;border:0;opacity:1;visibility:visible;transform:none;background:var(--bg-soft);padding:0}
  .main-nav li ul a{padding-left:44px}
  .footer-grid{grid-template-columns:1fr;gap:var(--sp-5)}
  .section{padding:var(--sp-7) 0}
  .hero{padding:var(--sp-8) 0 var(--sp-7)}
  .form-row.half{grid-template-columns:1fr}
  .cards.cards-fixed-3{grid-template-columns:1fr}
}
@media (max-width: 480px){
  :root{--fs-4xl:1.9rem;--fs-3xl:1.5rem}
  .btn{padding:10px 18px;font-size:var(--fs-xs)}
  .card{padding:var(--sp-5)}
}

@media print{
  .site-header,.site-footer,.to-top,.main-nav,.menu-toggle,.cta-band{display:none!important}
  body{color:#000;background:#fff}
  a{color:#000;text-decoration:underline}
}
