/* ============================================
   ASSESSMENT PAGE — PREMIUM V3 STYLES
   ============================================ */

/* ---------- HERO ---------- */
.assessment-hero-v3 {
    position: relative;
    padding: clamp(7rem,10vw,10rem) 0 clamp(3rem,5vw,5rem);
    background: var(--slate-50);
    overflow: hidden;
}
.assessment-hero-v3::before {
    content:'';position:absolute;inset:0;
    background: var(--gradient-hero-mesh);opacity:.7;
}

/* Floating orbs */
.hero-orb {
    position:absolute;border-radius:50%;
    filter:blur(80px);pointer-events:none;opacity:.5;
    animation: float 6s ease-in-out infinite;
}
.hero-orb-1{width:400px;height:400px;top:-10%;left:-5%;background:rgba(6,182,212,.18);}
.hero-orb-2{width:300px;height:300px;bottom:0;right:-5%;background:rgba(37,99,235,.15);animation-delay:2s;}
.hero-orb-3{width:200px;height:200px;top:40%;left:50%;background:rgba(16,185,129,.12);animation-delay:4s;}

.hero-content-v3 {
    position:relative;text-align:center;max-width:800px;margin:0 auto;
}

/* Top label pill */
.hero-badge-label {
    display:inline-flex;align-items:center;gap:var(--space-2);
    padding:var(--space-2) var(--space-4);
    background:rgba(255,255,255,.85);backdrop-filter:blur(12px);
    border:1px solid rgba(6,182,212,.2);border-radius:var(--radius-full);
    font-size:var(--text-xs);font-weight:var(--font-semibold);
    color:var(--accent-700);margin-bottom:var(--space-6);
    letter-spacing:var(--tracking-wide);
}
.hero-badge-label svg{color:var(--accent-500);}

.hero-title-v3 {
    font-family:var(--font-display);
    font-size:var(--text-5xl);font-weight:var(--font-extrabold);
    color:var(--slate-900);margin-bottom:var(--space-5);
    letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);
}

.hero-description-v3 {
    font-size:var(--text-lg);color:var(--slate-600);
    line-height:var(--leading-relaxed);margin-bottom:var(--space-8);
    max-width:600px;margin-left:auto;margin-right:auto;
}

/* Badge pills row */
.hero-badges-v3 {
    display:flex;justify-content:center;gap:var(--space-3);flex-wrap:wrap;
}
.hero-badge-pill {
    display:flex;align-items:center;gap:var(--space-2);
    padding:var(--space-2) var(--space-4);
    background:var(--white);border:1px solid var(--slate-200);
    border-radius:var(--radius-full);
    font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--slate-700);
    box-shadow:var(--shadow-sm);transition:var(--transition-normal);
}
.hero-badge-pill:hover {
    transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--accent-200);
}
.badge-icon-wrap {
    width:28px;height:28px;display:flex;align-items:center;justify-content:center;
    background:var(--accent-50);border-radius:50%;color:var(--accent-600);
}

/* ---------- FORM SECTION ---------- */
.assessment-form-section {
    padding:var(--space-20) 0;background:var(--white);
}
.form-layout {
    display:grid;grid-template-columns:1.6fr 1fr;gap:var(--space-12);
    max-width:1200px;margin:0 auto;
}

/* Form container — glass card */
.form-container {
    background:var(--white);
    border:1px solid var(--slate-200);
    border-radius:var(--radius-3xl);
    padding:var(--space-10);
    box-shadow:var(--shadow-card);
    position:relative;overflow:hidden;
}
.form-container::before {
    content:'';position:absolute;top:0;left:0;right:0;height:4px;
    background:var(--gradient-primary);
}

.form-header{margin-bottom:var(--space-8);}
.form-title {
    font-family:var(--font-display);font-size:var(--text-2xl);
    font-weight:var(--font-bold);color:var(--slate-900);margin-bottom:var(--space-2);
}
.form-description{color:var(--slate-500);line-height:var(--leading-relaxed);}

.assessment-form{display:flex;flex-direction:column;gap:var(--space-6);}

/* Form sections */
.form-section {
    padding:var(--space-6);
    border:1px solid var(--slate-100);
    border-radius:var(--radius-2xl);
    background:var(--slate-50);
    transition:var(--transition-normal);
}
.form-section:hover{border-color:var(--slate-200);box-shadow:var(--shadow-xs);}

.form-section > .section-title,
.form-section > h3.section-title {
    font-family:var(--font-display);font-size:var(--text-base);
    font-weight:var(--font-bold);color:var(--slate-800);
    margin-bottom:var(--space-5);padding-bottom:var(--space-3);
    border-bottom:1px solid var(--slate-200);display:flex;align-items:center;gap:var(--space-2);
}

.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4);}
.form-group{display:flex;flex-direction:column;margin-bottom:var(--space-3);}

.form-label {
    font-size:var(--text-sm);font-weight:var(--font-medium);
    color:var(--slate-700);margin-bottom:var(--space-2);
}
.form-label.required::after{content:' *';color:var(--error-500);}

.form-input,.form-select,.form-textarea {
    padding:var(--space-3) var(--space-4);
    border:1.5px solid var(--slate-300);
    border-radius:var(--radius-xl);
    font-family:var(--font-body);font-size:var(--text-base);
    color:var(--slate-900);background:var(--white);
    transition:all .2s var(--ease-smooth);
}
.form-input:focus,.form-select:focus,.form-textarea:focus {
    outline:none;border-color:var(--accent-500);
    box-shadow:0 0 0 3px rgba(6,182,212,.12);
}
.form-input::placeholder{color:var(--slate-400);}

/* Radio & Checkbox */
.radio-group{display:flex;flex-direction:column;gap:var(--space-1);}
.radio-label {
    display:flex;align-items:center;gap:var(--space-3);cursor:pointer;
    padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);
    transition:var(--transition-fast);
}
.radio-label:hover{background:var(--white);}
.radio-label input[type="radio"]{
    appearance:none;width:18px;height:18px;border:2px solid var(--slate-400);
    border-radius:50%;margin:0;position:relative;cursor:pointer;
    transition:var(--transition-fast);
}
.radio-label input[type="radio"]:checked{border-color:var(--accent-500);background:var(--accent-500);}
.radio-label input[type="radio"]:checked::after{
    content:'';position:absolute;inset:3px;background:var(--white);border-radius:50%;
}
.radio-text{color:var(--slate-600);font-size:var(--text-sm);}

.checkbox-label {
    display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;
}
.checkbox-label input[type="checkbox"]{
    appearance:none;width:18px;height:18px;border:2px solid var(--slate-400);
    border-radius:var(--radius-sm);margin-top:2px;cursor:pointer;
    transition:var(--transition-fast);flex-shrink:0;
}
.checkbox-label input[type="checkbox"]:checked{
    border-color:var(--accent-500);background:var(--accent-500);
}
.checkbox-label input[type="checkbox"]:checked::after{
    content:'✓';color:var(--white);font-size:12px;font-weight:700;
    display:flex;align-items:center;justify-content:center;height:100%;
}
.checkbox-text{font-size:var(--text-sm);color:var(--slate-600);line-height:var(--leading-relaxed);}
.checkbox-label a{color:var(--accent-600);text-decoration:none;}
.checkbox-label a:hover{text-decoration:underline;}

/* Submit */
.form-actions{margin-top:var(--space-4);}
.form-actions .btn-primary.btn-lg.btn-block {
    width:100%;padding:var(--space-4) var(--space-8);
    font-size:var(--text-base);border-radius:var(--radius-2xl);
}
.form-note{margin-top:var(--space-4);text-align:center;}
.form-note small{color:var(--slate-500);font-size:var(--text-xs);}
.form-note a{color:var(--accent-600);text-decoration:none;}
.form-note a:hover{text-decoration:underline;}

/* ---------- BENEFITS SIDEBAR ---------- */
.benefits-sidebar{display:flex;flex-direction:column;gap:var(--space-6);position:sticky;top:100px;}

.benefits-card {
    background:var(--white);border:1px solid var(--slate-100);
    border-radius:var(--radius-3xl);padding:var(--space-8);
    box-shadow:var(--shadow-card);
}
.benefits-title {
    font-family:var(--font-display);font-size:var(--text-xl);
    font-weight:var(--font-bold);color:var(--slate-900);margin-bottom:var(--space-6);
}
.benefits-list{display:flex;flex-direction:column;gap:var(--space-5);}
.benefit-item{display:flex;gap:var(--space-4);align-items:flex-start;}
.benefit-icon {
    width:40px;height:40px;display:flex;align-items:center;justify-content:center;
    background:var(--accent-50);border-radius:var(--radius-xl);
    color:var(--accent-600);flex-shrink:0;
}
.benefit-title{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--slate-900);margin-bottom:2px;}
.benefit-description{font-size:var(--text-xs);color:var(--slate-500);line-height:var(--leading-relaxed);}

/* Testimonial card */
.testimonial-card {
    background:var(--gradient-dark);color:var(--white);
    padding:var(--space-8);border-radius:var(--radius-3xl);position:relative;overflow:hidden;
}
.testimonial-card::before {
    content:'❝';position:absolute;top:-10px;left:16px;
    font-size:6rem;opacity:.08;color:var(--white);line-height:1;
}
.testimonial-quote{font-size:var(--text-base);line-height:var(--leading-relaxed);font-style:italic;margin-bottom:var(--space-5);position:relative;}
.author-name{font-size:var(--text-sm);font-weight:var(--font-bold);margin-bottom:2px;}
.author-title{font-size:var(--text-xs);opacity:.7;}

/* ---------- TRUST SECTION ---------- */
.trust-section{padding:var(--space-16) 0;background:var(--slate-50);}
.trust-content{text-align:center;}
.trust-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--slate-900);margin-bottom:var(--space-10);}
.trust-stats{display:flex;justify-content:center;gap:var(--space-16);flex-wrap:wrap;}
.trust-stat{text-align:center;}
.stat-number {
    font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-extrabold);
    background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;
    background-clip:text;margin-bottom:var(--space-2);
}
.stat-label{font-size:var(--text-sm);color:var(--slate-500);font-weight:var(--font-medium);}

/* ---------- PROCESS SECTION ---------- */
.process-section{padding:var(--space-20) 0;background:var(--white);}
.section-header{text-align:center;margin-bottom:var(--space-12);}
.process-section .section-title,
.sample-report-section .section-title,
.privacy-notice-section .privacy-title {
    font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-bold);
    color:var(--slate-900);margin-bottom:var(--space-4);
}
.section-description{font-size:var(--text-base);color:var(--slate-500);max-width:560px;margin:0 auto;line-height:var(--leading-relaxed);}

.process-steps {
    display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);max-width:1100px;margin:0 auto;
}
.process-step {
    text-align:center;padding:var(--space-8) var(--space-5);
    background:var(--white);border:1px solid var(--slate-100);
    border-radius:var(--radius-2xl);transition:var(--transition-normal);position:relative;
}
.process-step:hover{border-color:var(--accent-200);box-shadow:var(--shadow-lg);transform:translateY(-4px);}
.step-number {
    width:52px;height:52px;border-radius:var(--radius-xl);
    background:var(--gradient-primary);color:var(--white);
    display:flex;align-items:center;justify-content:center;
    font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-bold);
    margin:0 auto var(--space-5);box-shadow:var(--shadow-primary-sm);
}
.step-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--font-bold);color:var(--slate-900);margin-bottom:var(--space-3);}
.step-description{color:var(--slate-500);font-size:var(--text-sm);line-height:var(--leading-relaxed);}

/* ---------- SAMPLE REPORT ---------- */
.sample-report-section{padding:var(--space-20) 0;background:var(--slate-50);}
.report-preview {
    background:var(--white);border-radius:var(--radius-3xl);
    box-shadow:var(--shadow-xl);overflow:hidden;max-width:820px;margin:0 auto;
    border:1px solid var(--slate-100);
}
.report-header{background:var(--gradient-dark);color:var(--white);padding:var(--space-8);text-align:center;}
.report-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-bold);margin-bottom:var(--space-1);}
.report-date{opacity:.6;font-size:var(--text-sm);}
.report-content{padding:var(--space-8);}

.compliance-score {
    display:flex;align-items:center;gap:var(--space-8);margin-bottom:var(--space-8);
    padding:var(--space-6);background:var(--slate-50);border-radius:var(--radius-2xl);
}
.score-circle{text-align:center;flex-shrink:0;}
.score-number {
    font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-extrabold);
    background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;
    background-clip:text;line-height:1;
}
.score-label{font-size:var(--text-xs);color:var(--slate-500);margin-top:var(--space-2);font-weight:var(--font-medium);}
.score-breakdown{flex:1;}
.breakdown-item{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);}
.breakdown-label{width:160px;font-size:var(--text-sm);color:var(--slate-700);font-weight:var(--font-medium);}
.breakdown-bar{flex:1;height:8px;background:var(--slate-200);border-radius:var(--radius-full);overflow:hidden;}
.breakdown-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-full);transition:width .6s var(--ease-out-expo);}
.breakdown-score{width:40px;text-align:right;font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--slate-800);}

.report-sections{display:grid;gap:var(--space-6);}
.report-section{padding:var(--space-5);background:var(--slate-50);border-radius:var(--radius-xl);}
.report-section .section-title{font-size:var(--text-base);font-weight:var(--font-bold);color:var(--slate-800);margin-bottom:var(--space-4);text-align:left;}

.gap-list{list-style:none;padding:0;margin:0;}
.gap-item {
    display:flex;gap:var(--space-3);padding:var(--space-4);background:var(--white);
    border-radius:var(--radius-xl);margin-bottom:var(--space-3);border-left:4px solid var(--warning-500);
    transition:var(--transition-fast);
}
.gap-item:hover{box-shadow:var(--shadow-sm);}
.gap-item.high-priority{border-left-color:var(--error-500);}
.gap-item.medium-priority{border-left-color:var(--warning-500);}
.gap-icon{font-size:1.1rem;flex-shrink:0;}
.gap-title{font-weight:var(--font-bold);color:var(--slate-800);margin-bottom:2px;font-size:var(--text-sm);}
.gap-description{color:var(--slate-500);font-size:var(--text-xs);}

.recommendations-list{list-style:none;padding:0;margin:0;}
.recommendation-item{display:flex;gap:var(--space-3);padding:var(--space-4);background:var(--white);border-radius:var(--radius-xl);margin-bottom:var(--space-3);}
.recommendation-number {
    width:28px;height:28px;border-radius:50%;background:var(--gradient-primary);
    color:var(--white);display:flex;align-items:center;justify-content:center;
    font-size:var(--text-xs);font-weight:var(--font-bold);flex-shrink:0;
}
.recommendation-title{font-weight:var(--font-bold);color:var(--slate-800);margin-bottom:2px;font-size:var(--text-sm);}
.recommendation-description{color:var(--slate-500);font-size:var(--text-xs);margin-bottom:var(--space-1);}
.recommendation-timeline{font-size:var(--text-xs);color:var(--accent-600);font-weight:var(--font-semibold);}

/* ---------- PRIVACY SECTION ---------- */
.privacy-notice-section{padding:var(--space-20) 0;background:var(--white);}
.privacy-notice{max-width:800px;margin:0 auto;}
.privacy-header{text-align:center;margin-bottom:var(--space-10);}
.privacy-icon{color:var(--accent-500);margin-bottom:var(--space-4);}
.privacy-content{display:grid;gap:var(--space-8);}
.privacy-guarantees{display:grid;gap:var(--space-4);}
.guarantee-item {
    display:flex;gap:var(--space-4);padding:var(--space-5);
    background:var(--slate-50);border-radius:var(--radius-2xl);
    border:1px solid var(--slate-100);transition:var(--transition-normal);
}
.guarantee-item:hover{border-color:var(--accent-200);box-shadow:var(--shadow-sm);}
.guarantee-icon{color:var(--success-500);flex-shrink:0;margin-top:2px;}
.guarantee-title{font-size:var(--text-base);font-weight:var(--font-bold);color:var(--slate-800);margin-bottom:var(--space-1);}
.guarantee-description{color:var(--slate-500);font-size:var(--text-sm);line-height:var(--leading-relaxed);}

.privacy-details{padding:var(--space-6);background:var(--slate-50);border-radius:var(--radius-2xl);border:1px solid var(--slate-100);}
.details-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--slate-800);margin-bottom:var(--space-4);}
.details-list{list-style:none;padding:0;margin:0;}
.details-list li{padding:var(--space-2) 0;color:var(--slate-600);font-size:var(--text-sm);position:relative;padding-left:var(--space-6);}
.details-list li::before{content:"✓";position:absolute;left:0;color:var(--success-500);font-weight:700;}

/* ---------- VALIDATION ---------- */
.form-status{margin-bottom:var(--space-4);padding:var(--space-4);border-radius:var(--radius-xl);border:1px solid;}
.form-status.success{background:var(--success-50);border-color:var(--success-500);color:#065f46;}
.form-status.error{background:var(--error-50);border-color:var(--error-500);color:#991b1b;}
.field-error{color:var(--error-500);font-size:var(--text-xs);margin-top:var(--space-1);display:none;}
.field-error.show{display:block;}
.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--error-500);box-shadow:0 0 0 3px rgba(239,68,68,.1);}
.captcha-container{margin:var(--space-3) 0;}
.btn-loading{display:flex;align-items:center;gap:.5rem;}
.loading-spinner{animation:spin 1s linear infinite;}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1024px){
    .form-layout{grid-template-columns:1fr;gap:var(--space-10);}
    .benefits-sidebar{position:static;}
    .process-steps{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
    .assessment-hero-v3{padding:clamp(5rem,8vw,7rem) 0 var(--space-10);}
    .hero-title-v3{font-size:var(--text-3xl);}
    .hero-badges-v3{flex-direction:column;align-items:center;}
    .form-row{grid-template-columns:1fr;}
    .form-container{padding:var(--space-6);}
    .process-steps{grid-template-columns:1fr;}
    .trust-stats{flex-direction:column;gap:var(--space-8);}
    .compliance-score{flex-direction:column;gap:var(--space-6);text-align:center;}
    .breakdown-item{flex-direction:column;align-items:flex-start;gap:var(--space-2);}
    .breakdown-label{width:auto;}
    .breakdown-bar{width:100%;}
    .breakdown-score{text-align:left;}
    .guarantee-item{flex-direction:column;text-align:center;}
}
