/* PROFESSIONAL THEME */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Playfair+Display:wght@600;700&display=swap');

:root {
  --bg-body: #f6f7f9;
  --bg-surface: #ffffff;
  --text-main: #1e1e2a;
  --text-muted: #6c7085;
  --accent: #d97706;
  --accent-hover: #b45309;
  --border-radius: 10px;
  --shadow: 0 4px 12px rgba(30,30,42,.06);
  --font-header: 'Playfair Display', serif;
  --font-body: 'Inter', sans-serif;
  --max-width: 1200px;
  --section-padding: clamp(2rem, 5vw, 4rem);
}

/* Global Reset */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font-body);background:var(--bg-body);color:var(--text-main);line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--font-header);font-weight:600;line-height:1.2;color:var(--text-main)}
h1{font-size:clamp(2rem, 4vw, 2.75rem)}
h2{font-size:clamp(1.5rem, 3vw, 2rem)}
h3{font-size:clamp(1.125rem, 2vw, 1.375rem)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* Layout Helpers */
.container{width:min(90%,var(--max-width));margin-inline:auto}
.section{padding-block:var(--section-padding)}

/* Header */
.site-header{background:var(--bg-surface);box-shadow:var(--shadow);position:sticky;top:0;z-index:100}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.logo{font-family:var(--font-header);font-size:1.5rem;font-weight:700;color:var(--accent)}
.main-nav ul{display:flex;gap:2rem;list-style:none}
.main-nav a{font-weight:500;color:var(--text-muted);transition:color .2s}
.main-nav a:hover{color:var(--accent)}

/* Mobile Menu (Checkbox Hack) */
#menu-toggle{display:none}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer}
.hamburger span{width:26px;height:3px;background:var(--text-main);border-radius:2px;transition:.3s}
#menu-toggle:checked ~ .main-nav{display:block;position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);box-shadow:var(--shadow);padding:1rem 0}
#menu-toggle:checked ~ .main-nav ul{flex-direction:column;gap:1rem}

/* Buttons */
.btn{display:inline-block;padding:.75rem 1.5rem;font-weight:500;background:var(--accent);color:#fff;border-radius:var(--border-radius);transition:background .2s}
.btn:hover{background:var(--accent-hover)}

/* Cards Grid */
.offers-grid,.partners-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}
.job-card{background:var(--bg-surface);border-radius:var(--border-radius);box-shadow:var(--shadow);padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}
.job-card h3{margin-bottom:.25rem}
.job-card p{color:var(--text-muted);flex:1 1 auto}
.partner-link{background:var(--bg-surface);border-radius:var(--border-radius);box-shadow:var(--shadow);padding:1.25rem;text-align:center;font-weight:500;color:var(--text-muted);transition:color .2s,box-shadow .2s}
.partner-link:hover{color:var(--accent);box-shadow:0 6px 18px rgba(30,30,42,.08)}

/* Footer */
.site-footer{background:var(--text-main);color:#fff;padding-block:2.5rem}
.footer-content{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.footer-section h4{font-family:var(--font-header);margin-bottom:.75rem;font-size:1.125rem}
.footer-section a{color:#c9cbd8;transition:color .2s}
.footer-section a:hover{color:var(--accent)}

/* FAQ Accordion */
details{border-bottom:1px solid #e5e7eb;padding-block:1rem}
summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:500;list-style:none}
summary::after{content:"+";font-size:1.25rem;color:var(--accent);transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details > div{padding-top:1rem;color:var(--text-muted)}

/* Show More Partners (Checkbox Hack) */
.partners-wrapper .partners-hidden{display:none}
.partners-wrapper .show-more-checkbox{display:none}
.partners-wrapper .show-more-checkbox:checked ~ .partners-hidden{display:grid}
.partners-wrapper .show-more-checkbox:checked ~ .show-more-container{display:none}
.show-more-container{text-align:center;margin-top:1.5rem}
.show-more-container label{cursor:pointer;font-weight:500;color:var(--accent);border:1px solid var(--accent);padding:.5rem 1.25rem;border-radius:var(--border-radius);transition:background .2s,color .2s}
.show-more-container label:hover{background:var(--accent);color:#fff}

/* Responsive */
@media (max-width:768px){
  .hamburger{display:flex}
  .main-nav{display:none}
  .offers-grid,.partners-grid{grid-template-columns:1fr}
}