/* AdmissionsEdge — shared site stylesheet */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:#faf8f4;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#201f1c;-webkit-font-smoothing:antialiased;}
::selection{background:rgba(44,74,61,0.18);}
a{color:#2c4a3d;text-decoration:none;}
a:hover{color:#1f382e;}
table{border-collapse:collapse;width:100%;}
img{max-width:100%;display:block;}
button{font-family:inherit;}

.page-wrap{min-height:100vh;background:#faf8f4;}

/* header / nav */
.pt-headbar{display:flex;align-items:center;justify-content:space-between;padding:15px 40px;border-bottom:1px solid #e6e0d3;background:#faf8f4;}
.brand{cursor:pointer;display:flex;align-items:center;gap:10px;flex-shrink:0;}
.brand-mark{width:30px;height:30px;border-radius:6px;background:#2c4a3d;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;font-family:'Lora',Georgia,serif;}
.brand-name{font-weight:700;font-size:20px;letter-spacing:-0.01em;color:#201f1c;font-family:'Lora',Georgia,serif;}
.pnav{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end;row-gap:10px;flex:1;min-width:0;margin-left:20px;}
.pnav a{white-space:nowrap;flex-shrink:0;cursor:pointer;font-size:14px;font-weight:600;color:#4a453d;}
.pnav a.active{font-weight:700;color:#201f1c;}
.pnav .cta{cursor:pointer;background:#2c4a3d;color:#fff;padding:10px 18px;border-radius:4px;font-size:13px;font-weight:700;letter-spacing:0.03em;}
.pnav .cta:hover{color:#fff;background:#1f382e;}
.res-wrap{position:relative;}
.res-trigger{display:inline-flex;align-items:center;gap:4px;}
.res-chevron{font-size:10px;transition:transform 0.15s ease;display:inline-block;}
.res-wrap.open .res-chevron{transform:rotate(180deg);}
.res-dropdown{position:absolute;top:calc(100% + 8px);right:0;left:auto;min-width:230px;background:#fff;border:1px solid #e6e0d3;border-radius:6px;box-shadow:0 8px 24px rgba(32,31,28,0.12);z-index:50;overflow:hidden;display:none;}
.res-wrap.open .res-dropdown{display:block;}
.res-dropdown a{display:block;padding:12px 16px;border-bottom:1px solid #f0ede3;font-size:14px;font-weight:600;color:#4a453d;}
.res-dropdown a:last-child{border-bottom:none;}
.res-dropdown a.active{font-weight:700;color:#201f1c;}
.res-overlay{position:fixed;inset:0;z-index:40;display:none;}
.res-wrap.open .res-overlay{display:block;}

/* footer */
.site-footer{border-top:1px solid #e6e0d3;padding:36px 44px;}
.site-footer-inner{max-width:1080px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.site-footer .copy{font-size:13px;color:#8a8374;}
.site-footer .disclaimer{font-size:12.5px;color:#8a8374;max-width:460px;}

/* home */
.phero{max-width:760px;margin:0 auto;padding:88px 40px 64px;text-align:center;}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:0.12em;color:#b3852f;}
.phero h1{margin:18px 0 0;font-family:'Lora',Georgia,serif;font-weight:600;font-size:46px;line-height:1.2;color:#201f1c;text-wrap:balance;}
.phero p{margin:22px 0 0;font-size:17px;line-height:1.7;color:#5c5648;}
.btn-primary{cursor:pointer;display:inline-block;background:#2c4a3d;color:#fff;padding:16px 32px;border-radius:4px;font-size:13px;font-weight:700;letter-spacing:0.05em;border:none;}
.btn-primary:hover{color:#fff;background:#1f382e;}
.pgrid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.pgrid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.card{background:#fff;border:1px solid #e6e0d3;border-radius:6px;padding:26px 22px;}
.card h3{font-family:'Lora',Georgia,serif;font-weight:600;font-size:17px;color:#201f1c;margin:0;}
.card p{margin:10px 0 0;font-size:14px;line-height:1.6;color:#5c5648;}
.guide-card{cursor:pointer;background:#fff;border:1px solid #e6e0d3;border-radius:6px;padding:28px;display:block;}
.guide-kicker{font-size:11px;font-weight:700;letter-spacing:0.06em;color:#b3852f;}
.guide-title{margin-top:10px;font-family:'Lora',Georgia,serif;font-weight:600;font-size:19px;color:#201f1c;line-height:1.35;}
.guide-desc{margin:12px 0 0;font-size:13.5px;line-height:1.6;color:#5c5648;}
.guide-link{margin-top:16px;font-size:13px;font-weight:700;color:#2c4a3d;}
.section-title{text-align:center;font-family:'Lora',Georgia,serif;font-weight:600;font-size:28px;color:#201f1c;margin:0 0 8px;text-wrap:balance;}
.section-sub{text-align:center;max-width:620px;margin:0 auto 40px;font-size:15px;line-height:1.7;color:#5c5648;}
.dark-cta{max-width:1080px;margin:0 auto;padding:64px 40px;}
.dark-cta-inner{background:#201f1c;border-radius:8px;padding:44px 48px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;}
.dark-cta h2{margin:10px 0 0;font-family:'Lora',Georgia,serif;font-weight:600;font-size:24px;color:#fff;}
.dark-cta p{margin:12px 0 0;font-size:14.5px;line-height:1.65;color:#d8d3c6;}
.btn-gold{cursor:pointer;flex-shrink:0;background:#c9a55c;color:#201f1c;padding:15px 26px;border-radius:4px;font-size:13px;font-weight:700;letter-spacing:0.04em;}
.btn-gold:hover{color:#201f1c;background:#b3903f;}

/* articles */
.art{max-width:700px;margin:0 auto;padding:64px 40px 30px;}
.art h1{margin:14px 0 0;font-family:'Lora',Georgia,serif;font-weight:600;font-size:38px;line-height:1.25;color:#201f1c;text-wrap:balance;}
.art h2{margin:44px 0 14px;font-family:'Lora',Georgia,serif;font-weight:600;font-size:24px;color:#201f1c;}
.art p{margin:0 0 18px;font-size:16px;line-height:1.75;color:#4a453d;}
.art p.lede{font-size:17px;margin-top:20px;}
.art ul{margin:0 0 18px;padding-left:20px;font-size:16px;line-height:1.85;color:#4a453d;}
.art-cta{margin:48px 0 0;background:#f2eee3;border-radius:8px;padding:32px 34px;text-align:center;}
.art-cta-title{font-family:'Lora',Georgia,serif;font-weight:600;font-size:20px;color:#201f1c;}
.art-cta p{margin:10px 0 0;font-size:14.5px;line-height:1.65;color:#5c5648;}
.art-nav{margin:40px 0 0;padding-top:26px;border-top:1px solid #e6e0d3;display:flex;gap:24px;flex-wrap:wrap;justify-content:space-between;}
.art-nav a{font-size:14px;font-weight:700;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:26px 0;}
.two-col .card-title{font-family:'Lora',Georgia,serif;font-weight:600;font-size:16px;color:#201f1c;}
.two-col ul{margin:12px 0 0;padding-left:18px;font-size:14.5px;line-height:1.8;color:#4a453d;}
.quote-box{background:#fff;border:1px solid #e6e0d3;border-radius:6px;padding:18px 22px;margin-bottom:16px;font-family:'Lora',Georgia,serif;font-style:italic;font-size:16px;color:#201f1c;}
.qa{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.qa-card{padding:18px 20px;border-radius:6px;border:1px solid;}
.qa-card.weak{background:#fdf3f0;border-color:#edd9d1;border-left:4px solid #b5573f;}
.qa-card.strong{background:#f0f6f1;border-color:#d3e5d6;border-left:4px solid #2c4a3d;}
.qa-label{font-size:11px;font-weight:700;letter-spacing:0.06em;}
.qa-label.weak{color:#b5573f;}
.qa-label.strong{color:#2c4a3d;}
.qa-card p{margin:10px 0 0;font-size:14.5px;line-height:1.65;color:#4a453d;}
.mistake-card{background:#fff;border:1px solid #e6e0d3;border-radius:6px;padding:24px 26px;}
.mistake-head{display:flex;align-items:baseline;gap:12px;}
.mistake-num{font-family:'Lora',Georgia,serif;font-weight:700;font-size:22px;color:#c9a55c;}
.mistake-title{font-family:'Lora',Georgia,serif;font-weight:600;font-size:19px;color:#201f1c;}
.mistake-card p{margin:12px 0 0;font-size:15px;line-height:1.7;color:#4a453d;}

/* compare schools */
.cs-hero{max-width:820px;margin:0 auto;padding:60px 44px 10px;text-align:center;}
.cs-hero h1{margin:14px 0 0;font-family:'Lora',Georgia,serif;font-weight:600;font-size:36px;line-height:1.25;color:#201f1c;}
.cs-hero p{margin:16px 0 0;font-size:16px;line-height:1.7;color:#4a453d;}
.cs-notice{max-width:820px;margin:18px auto 0;padding:0 44px;}
.cs-notice-inner{background:#fdf6e8;border:1px solid #ecd9a8;border-radius:6px;padding:16px 20px;font-size:13.5px;line-height:1.6;color:#6b5522;}
.cs-wrap{max-width:1180px;margin:0 auto;padding:34px 24px 90px;}
.cs-scroll{overflow-x:auto;border-radius:6px;}
.cs-table{background:#fff;border:1px solid #e6e0d3;border-radius:6px;overflow:hidden;min-width:640px;}
.cs-table th{text-align:left;padding:14px 18px;font-size:11px;font-weight:700;letter-spacing:0.06em;color:#7a7364;background:#f2eee3;}
.cs-table td{padding:15px 18px;font-size:13.5px;color:#5c5648;}
.cs-table td.school-name{font-size:14px;font-weight:700;color:#201f1c;}
.cs-row{cursor:pointer;border-top:1px solid #eee9dc;}
.cs-row:first-child{border-top:none;}
.cs-row.expanded{background:#f2eee3;}
.cs-chevron{font-size:13px;color:#8a8374;text-align:center;}
.cs-detail{padding:0;background:#faf8f4;border-bottom:1px solid #e6e0d3;}
.cs-detail-inner{padding:22px 26px 26px;}
.cs-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.cs-detail-card{background:#fff;border:1px solid #e6e0d3;border-radius:6px;padding:18px 20px;}
.cs-detail-label{font-size:11px;font-weight:700;letter-spacing:0.06em;color:#b3852f;}
.cs-detail-body{margin-top:8px;font-size:13.5px;line-height:1.8;color:#4a453d;}
.cs-detail-notes{margin-top:14px;font-size:13.5px;line-height:1.7;color:#4a453d;}
.cs-detail-source{margin-top:10px;font-size:12px;color:#9a9384;}
.cs-closing{max-width:680px;margin:0 auto;padding:0 40px 90px;text-align:center;}
.cs-closing h2{font-family:'Lora',Georgia,serif;font-weight:600;font-size:26px;color:#201f1c;margin:0;}
.cs-closing p{margin:14px 0 0;font-size:15px;line-height:1.7;color:#5c5648;}

/* practice test */
.pt-center{max-width:640px;margin:0 auto;padding:90px 40px;text-align:center;}
.pt-kicker{font-size:11px;font-weight:700;letter-spacing:0.1em;color:#2c4a3d;}
.pt-center h1{margin:14px 0 0;font-family:'Lora',Georgia,serif;font-size:38px;font-weight:600;color:#201f1c;line-height:1.25;}
.pt-center p{margin:20px 0 0;font-size:16px;line-height:1.7;color:#5c5648;}
.pt-stats{margin-top:34px;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;}
.pt-stat-num{font-size:22px;font-weight:800;color:#2c4a3d;}
.pt-stat-label{font-size:12.5px;color:#8a8374;}
.pt-start-btn{margin-top:40px;padding:16px 34px;}
.pt-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 40px;border-bottom:1px solid #e6e0d3;background:#fff;flex-wrap:wrap;}
.pt-topbar .code{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:0.07em;color:#7a7364;}
.pt-timer{display:flex;align-items:center;gap:8px;}
.pt-timer-dot{display:inline-flex;width:20px;height:20px;border-radius:50%;border:1px solid #d8d2c4;align-items:center;justify-content:center;font-size:11px;color:#8a8374;}
.pt-timer-val{font-variant-numeric:tabular-nums;font-size:13px;font-weight:700;color:#201f1c;}
.pt-timer-suffix{font-size:12px;color:#9a9384;}
.pt-progress{display:flex;align-items:center;gap:12px;}
.pt-progress-label{font-size:12px;color:#7a7364;}
.pt-progress-track{width:140px;height:6px;border-radius:3px;background:#e6e0d3;overflow:hidden;}
.pt-progress-fill{height:100%;background:#2c4a3d;border-radius:3px;}
.pt-main{display:flex;gap:44px;align-items:flex-start;max-width:1180px;margin:0 auto;padding:38px 40px 60px;}
.pt-qcol{flex:1;min-width:0;padding-top:6px;}
.pt-passage{background:#f2eee3;border:1px solid #e6e0d3;border-radius:6px;padding:22px 24px;max-height:320px;overflow-y:auto;margin-bottom:26px;}
.pt-passage-title{font-size:11px;font-weight:700;letter-spacing:0.08em;color:#7a7364;margin-bottom:10px;}
.pt-passage p{margin:0 0 13px;font-size:14.5px;line-height:1.75;color:#3a424d;}
.pt-kicker-q{font-size:11px;font-weight:700;letter-spacing:0.08em;color:#2c4a3d;margin-bottom:10px;}
.pt-qcol h1{font-family:'Lora',Georgia,serif;font-weight:600;font-size:26px;line-height:1.4;color:#201f1c;margin:0;text-wrap:balance;}
.pt-qcol h1.math{font-weight:400;font-family:Georgia,"Times New Roman",serif;}
.pt-choice-text.math{font-family:Georgia,"Times New Roman",serif;font-size:20px;}
.pt-hint{margin:22px 0 0;color:#8a8374;font-size:14px;line-height:1.6;max-width:460px;}
.pt-panel{width:472px;flex-shrink:0;background:#f2eee3;border:1px solid #e6e0d3;border-radius:5px;overflow:hidden;}
.pt-panel-top{display:flex;gap:12px;padding:18px 22px;}
.pt-back-btn{cursor:pointer;background:none;border:1px solid #cfc8b8;border-radius:4px;padding:9px 16px;font-size:12.5px;font-weight:700;color:#5c5648;}
.pt-divider{height:1px;background:#e6e0d3;margin:0 22px;}
.pt-choice{display:flex;align-items:center;gap:14px;padding:16px 22px;cursor:pointer;}
.pt-choice:hover{background:#ece6d8;}
.pt-choice.selected{background:#e0ddd0;}
.pt-choice-circle{width:26px;height:26px;border-radius:50%;border:1.5px solid #cfc8b8;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;color:#5c5648;flex-shrink:0;background:#fff;}
.pt-choice.selected .pt-choice-circle{background:#2c4a3d;border-color:#2c4a3d;color:#fff;}
.pt-choice-text{font-size:14.5px;color:#3a424d;}
.pt-panel-bottom{padding:20px 22px 22px;}
.pt-submit-btn{width:100%;padding:15px 0;background:#2c4a3d;border:none;border-radius:4px;font:700 13px "Helvetica Neue",Arial,sans-serif;letter-spacing:0.05em;color:#fff;cursor:pointer;}
.pt-submit-btn:disabled{opacity:0.45;cursor:not-allowed;}
.pt-submit-btn:not(:disabled):hover{background:#1f382e;}
.pt-results{max-width:900px;margin:0 auto;padding:50px 40px 80px;}
.pt-score-head{text-align:center;}
.pt-score-pct{margin-top:14px;font-family:'Lora',Georgia,serif;font-size:64px;font-weight:700;color:#2c4a3d;line-height:1;}
.pt-score-sub{margin-top:8px;font-size:16px;color:#5c5648;}
.pt-section-panel{margin-top:44px;background:#ffffff;border:1px solid #e6e0d3;border-radius:6px;padding:28px 30px;}
.pt-panel-heading{font-size:11px;font-weight:700;letter-spacing:0.09em;color:#7a7364;margin-bottom:18px;}
.sb-row{display:flex;align-items:center;gap:14px;}
.sb-label{width:220px;flex-shrink:0;font-size:13.5px;font-weight:700;color:#201f1c;}
.sb-track{flex:1;height:9px;border-radius:5px;background:#eceef1;overflow:hidden;}
.sb-fill{height:100%;background:#2c4a3d;border-radius:5px;}
.sb-frac{width:60px;text-align:right;flex-shrink:0;font-size:13.5px;font-weight:700;color:#5c5648;}
.pt-retake-row{margin-top:34px;display:flex;justify-content:center;}
.btn-retake{padding:15px 30px;background:#2c4a3d;border:none;border-radius:4px;font:700 13px "Helvetica Neue",Arial,sans-serif;letter-spacing:0.05em;color:#fff;cursor:pointer;}
.btn-retake:hover{background:#1f382e;}
.pt-review{margin-top:44px;}
.rq-card{background:#fff;border:1px solid #e6e0d3;border-radius:6px;padding:20px 24px;margin-bottom:14px;border-left:4px solid #e6e0d3;}
.rq-card.correct{border-left-color:#3f7a5e;}
.rq-card.incorrect{border-left-color:#b5573f;}
.rq-head{display:flex;align-items:center;gap:12px;cursor:pointer;}
.rq-badge{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;color:#fff;}
.rq-badge.correct{background:#3f7a5e;}
.rq-badge.incorrect{background:#b5573f;}
.rq-meta{font-size:11px;font-weight:700;letter-spacing:0.06em;color:#9aa3ad;}
.rq-prompt{margin-top:3px;font-size:15px;color:#201f1c;}
.rq-toggle{font-size:12px;font-weight:700;color:#7a7364;flex-shrink:0;}
.rq-detail{margin-top:18px;padding-top:18px;border-top:1px solid #eef0f3;display:none;}
.rq-card.open .rq-detail{display:block;}
.pt-reviewgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.rq-answer-label{font-size:11px;font-weight:700;letter-spacing:0.05em;color:#9aa3ad;}
.rq-your-answer{margin-top:6px;font-size:14.5px;font-weight:700;}
.rq-your-answer.correct{color:#3f7a5e;}
.rq-your-answer.incorrect{color:#b5573f;}
.rq-correct-answer{margin-top:6px;font-size:14.5px;color:#3f7a5e;font-weight:700;}
.rq-steps{margin-top:18px;}
.rq-steps-label{font-size:11px;font-weight:700;letter-spacing:0.05em;color:#9aa3ad;margin-bottom:8px;}
.rq-step{display:flex;gap:10px;font-size:13.5px;line-height:1.6;color:#5c5648;margin-bottom:8px;}
.rq-step .dot{color:#2c4a3d;flex-shrink:0;}
.rq-concept{margin-top:16px;background:#f2eee3;border-radius:5px;padding:14px 16px;}
.rq-concept-label{font-size:11px;font-weight:700;letter-spacing:0.05em;color:#9aa3ad;}
.rq-concept-title{margin-top:5px;font-size:14px;font-weight:700;color:#201f1c;}
.rq-concept-body{margin:5px 0 0;font-size:13.5px;line-height:1.6;color:#5c5648;}
.rq-crowd{margin-top:18px;}
.rq-crowd-head{display:flex;align-items:center;justify-content:space-between;}
.rq-crowd-label{font-size:11px;font-weight:700;letter-spacing:0.05em;color:#9aa3ad;}
.rq-crowd-total{font-size:11.5px;color:#9a9384;}
.rq-crowd-rows{margin-top:10px;display:flex;flex-direction:column;gap:9px;}
.cr-row{display:flex;align-items:center;gap:12px;}
.cr-letter{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;}
.cr-track{flex:1;height:7px;border-radius:4px;background:#eceef1;overflow:hidden;}
.cr-fill{height:100%;border-radius:4px;background:#9aa3ad;}
.cr-fill.is-correct{background:#3f7a5e;}
.cr-pct{width:38px;text-align:right;font-size:12.5px;font-weight:700;color:#5c5648;}

@media (max-width:900px){
  .pgrid4{grid-template-columns:1fr 1fr !important;}
  .pgrid3{grid-template-columns:1fr !important;}
  .phero{padding:56px 24px !important;}
  .cs-table th:nth-child(4),.cs-table td:nth-child(4){display:none;}
  .pt-main{flex-direction:column !important;gap:26px !important;}
  .pt-panel{width:100% !important;}
  .pt-reviewgrid{grid-template-columns:1fr !important;}
}
@media (max-width:640px){
  .art h1{font-size:30px !important;}
  .art{padding:36px 22px !important;}
  .qa,.two-col{grid-template-columns:1fr !important;}
  .cs-hero{padding:44px 22px !important;}
  .cs-detail-grid{grid-template-columns:1fr !important;}
  .cs-table th:nth-child(3),.cs-table td:nth-child(3){display:none;}
  .sb-label{width:110px !important;font-size:12.5px !important;}
}
@media (max-width:560px){
  .pgrid4{grid-template-columns:1fr !important;}
  .phero{padding:44px 18px 48px !important;}
  .phero h1{font-size:30px !important;}
  .pt-headbar{padding:14px 18px !important;}
  .pt-topbar{padding:11px 18px !important;flex-wrap:wrap;gap:8px;}
  .pt-main{padding:22px 18px 24px !important;}
  .pt-center{padding:36px 18px !important;}
  .pt-panel{border-radius:0 !important;margin:0 -18px;width:calc(100% + 36px) !important;}
  .art{padding:32px 16px !important;}
  .cs-table th:nth-child(2),.cs-table td:nth-child(2){display:none;}
  .brand-name{display:none;}
  .dark-cta-inner{padding:30px 26px;}
}
@media (max-width:400px){
  .res-dropdown{max-width:calc(100vw - 36px);min-width:0;right:-18px;}
}
