/* Esnad Academic 1448-v10.9 Security Final Candidate */
:root{--sf-navy:#061827;--sf-navy-2:#0b2639;--sf-green:#0b6654;--sf-gold:#c79a45;--sf-ivory:#fffdf8;--sf-line:rgba(199,154,69,.24)}
body.dialog-open{overflow:hidden}
.secure-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}

/* Operational bundle preview modal */
.bundle-preview-dialog{width:min(1080px,calc(100% - 32px));max-height:calc(100vh - 32px);padding:0;border:0;border-radius:24px;background:transparent;overflow:visible;color:#1d2b35}
.bundle-preview-dialog::backdrop{background:rgba(3,15,25,.76);backdrop-filter:blur(6px)}
.bundle-preview-dialog-shell{position:relative;overflow:auto;max-height:calc(100vh - 32px);padding:30px;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:linear-gradient(155deg,#fff 0%,#fffdf8 62%,#f2f7f5 100%);box-shadow:0 34px 100px rgba(0,0,0,.38)}
.bundle-preview-close{position:absolute;top:16px;left:16px;width:44px;height:44px;border:1px solid #d8e0dd;border-radius:50%;background:#fff;color:var(--sf-navy);font-size:29px;line-height:1;cursor:pointer;box-shadow:0 8px 20px rgba(6,24,39,.1)}
.bundle-preview-close:hover{background:#f4f8f6}
.bundle-preview-heading{text-align:center;max-width:760px;margin:0 auto 24px;padding-inline:42px}
.bundle-preview-heading h2{margin:6px 0 8px;color:var(--sf-navy);font-size:clamp(26px,3vw,38px);line-height:1.35}
.bundle-preview-heading p{margin:0;color:#65726f;font-size:15px}
.bundle-preview-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bundle-preview-card{display:grid;grid-template-columns:118px minmax(0,1fr);gap:16px;align-items:center;padding:16px;border:1px solid #dde8e3;border-top:4px solid var(--sf-gold);border-radius:18px;background:#fff;box-shadow:0 15px 34px rgba(6,24,39,.09)}
.bundle-preview-card img{width:118px;aspect-ratio:3/4;object-fit:cover;border-radius:11px;border:1px solid #e4e8e6}
.bundle-preview-card h3{margin:0 0 13px;color:var(--sf-navy);font-size:18px;line-height:1.55}
.bundle-preview-card .btn{width:100%;min-height:46px;padding:10px 14px;font-size:13.5px}

/* Fix the request card on desktop without changing the good mobile layout */
.request-assist-section .request-assist-card{grid-template-columns:78px minmax(0,1fr) minmax(190px,230px)!important;gap:22px!important;align-items:center!important}
.request-assist-section .request-assist-copy{min-width:0!important}
.request-assist-section .request-assist-copy h2{overflow-wrap:normal!important;word-break:normal!important}
.request-assist-section .request-assist-copy p{max-width:780px!important;margin-inline:0!important}
.request-assist-section .request-actions{min-width:0!important;width:100%!important}

/* Final footer: same structure on every page */
.site-footer-final{padding-top:58px!important;background:linear-gradient(135deg,#04131f 0%,#061b2b 52%,#08283a 100%)!important;border-top:1px solid rgba(199,154,69,.28)}
.site-footer-final .footer-grid-final{position:relative;display:grid!important;grid-template-columns:1.05fr .68fr .68fr 1.5fr!important;gap:30px!important;align-items:start}
.site-footer-final h3{position:relative;margin:0 0 16px;color:#fff;font-size:17px}
.site-footer-final h3::after{content:"";display:block;width:42px;height:2px;margin-top:8px;background:linear-gradient(90deg,var(--sf-gold),transparent)}
.site-footer-final .footer-brand img{width:74px!important;height:74px!important;padding:4px!important;border-radius:14px!important;background:#fff!important;object-fit:contain!important}
.site-footer-final .footer-brand h2{margin:11px 0 5px!important;color:#fff!important;font-size:30px!important}
.site-footer-final .footer-brand p{margin:0;color:#b8c7c2;max-width:340px;font-size:13.5px;line-height:1.9}
.site-footer-final .footer-list{gap:9px!important}
.site-footer-final .footer-list a{position:relative;color:#e8d09a!important;text-decoration:none;font-size:13px;transition:.18s}
.site-footer-final .footer-list a:hover{color:#fff!important;padding-right:4px}
.site-footer-final .footer-contact-list-complete{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.site-footer-final .footer-contact-item{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:10px!important;min-height:58px;padding:9px 10px!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:12px!important;background:rgba(255,255,255,.045)!important;text-decoration:none!important;transform:none!important}
.site-footer-final .footer-contact-item:hover{border-color:rgba(199,154,69,.55)!important;background:rgba(255,255,255,.085)!important;transform:translateY(-1px)!important}
.site-footer-final .footer-contact-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(199,154,69,.42);border-radius:50%;background:rgba(199,154,69,.09);color:#fff;font-size:17px}
.site-footer-final .footer-contact-icon img{width:19px;height:19px;object-fit:contain}
.site-footer-final .footer-contact-item b{display:block;color:#fff;font-size:12px;line-height:1.35}
.site-footer-final .footer-contact-item small{display:block;margin-top:3px;color:#aebdb8;font-size:10px;line-height:1.45;overflow-wrap:anywhere;unicode-bidi:plaintext}
.site-footer-final .footer-social-row{display:flex;justify-content:center;padding:28px 0 10px!important}
.site-footer-final .social-hub.social-icons-only{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;width:auto!important;margin:0 auto!important;padding:10px 14px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:999px!important;background:rgba(255,255,255,.055)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important}
.site-footer-final .social-icons-only .social-link{display:grid!important;place-items:center!important;flex:0 0 43px!important;width:43px!important;height:43px!important;min-height:43px!important;padding:0!important;border:1px solid rgba(199,154,69,.62)!important;border-radius:50%!important;background:#07131d!important;box-shadow:0 8px 20px rgba(0,0,0,.24)!important}
.site-footer-final .social-icons-only .social-link:hover{background:#0b6654!important;transform:translateY(-2px)!important}
.site-footer-final .social-icons-only .social-link img{width:21px!important;height:21px!important;object-fit:contain!important}
.site-footer-final .footer-bottom{justify-content:center!important;margin-top:16px!important;padding:16px 0!important;color:#8fa29b!important;font-size:12px}

/* Checkout secure state */
#customerStep.is-complete{display:none}
.payment-step[hidden]{display:none!important}

@media(max-width:1100px){
  .bundle-preview-cards{grid-template-columns:1fr}
  .bundle-preview-card{grid-template-columns:104px minmax(0,1fr)}
  .bundle-preview-card img{width:104px}
  .site-footer-final .footer-grid-final{grid-template-columns:1fr 1fr!important}
  .site-footer-final .footer-contact-block{grid-column:1/-1}
  .site-footer-final .footer-contact-list-complete{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .bundle-preview-dialog{width:min(100% - 18px,680px);max-height:calc(100vh - 18px)}
  .bundle-preview-dialog-shell{max-height:calc(100vh - 18px);padding:24px 16px 18px;border-radius:18px}
  .bundle-preview-heading{padding-inline:34px;margin-bottom:18px}
  .bundle-preview-heading h2{font-size:26px}
  .bundle-preview-card{grid-template-columns:82px minmax(0,1fr);gap:12px;padding:12px}
  .bundle-preview-card img{width:82px}
  .bundle-preview-card h3{font-size:15.5px;margin-bottom:9px}
  .bundle-preview-card .btn{font-size:12.5px;min-height:44px}
  .request-assist-section .request-assist-card{grid-template-columns:1fr!important;text-align:center!important}
  .request-assist-section .request-actions{grid-column:auto!important}
  .site-footer-final .footer-grid-final{grid-template-columns:1fr!important;gap:26px!important}
  .site-footer-final .footer-contact-block{grid-column:auto}
  .site-footer-final .footer-contact-list-complete{grid-template-columns:1fr 1fr}
  .site-footer-final .footer-brand{text-align:center}
  .site-footer-final .footer-brand img{margin-inline:auto}
  .site-footer-final .footer-brand p{margin-inline:auto}
  .site-footer-final h3{text-align:center}
  .site-footer-final h3::after{margin-inline:auto}
  .site-footer-final .footer-list{text-align:center}
}
@media(max-width:500px){
  .bundle-preview-card{grid-template-columns:72px minmax(0,1fr)}
  .bundle-preview-card img{width:72px}
  .site-footer-final .footer-contact-list-complete{grid-template-columns:1fr}
  .site-footer-final .social-hub.social-icons-only{gap:7px!important;padding:9px 10px!important}
  .site-footer-final .social-icons-only .social-link{flex-basis:39px!important;width:39px!important;height:39px!important;min-height:39px!important}
  .site-footer-final .social-icons-only .social-link img{width:19px!important;height:19px!important}
}


/* R3 approved interface refinements */
.hero-trust{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.hero-trust span{display:flex!important;align-items:center!important;gap:9px!important;min-height:52px!important;padding:10px 12px!important;border:1px solid rgba(199,154,69,.38)!important;border-radius:14px!important;background:rgba(255,255,255,.78)!important;color:var(--sf-navy)!important}
.hero-trust span i{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:#eef7f3;color:#0b6b59;font-style:normal;font-weight:900}
.hero-trust span b{font-size:13px!important;line-height:1.45!important}
.command-stats div{display:grid!important;grid-template-columns:48px 1fr!important;align-items:center!important;gap:12px!important;text-align:right!important;padding:17px!important}
.command-stats i{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#edf7f3,#fff7e7);border:1px solid #d8e6df;color:#0b6b59;font-style:normal;font-size:22px;font-weight:900}
.command-stats span{margin-top:0!important;font-size:14px!important;line-height:1.55!important}
.editorial-role-card small{font-size:19px!important;line-height:1.35!important;font-weight:900!important;letter-spacing:0!important}
.request-actions{min-width:230px!important}
.feedback-wrap-r3{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:30px;align-items:center}
.feedback-copy-wide .feedback-open-button{margin-top:16px;min-width:180px}
.feedback-dialog{width:min(720px,calc(100% - 28px));max-height:calc(100vh - 28px);border:0;padding:0;border-radius:24px;background:transparent;color:var(--sf-navy);overflow:visible}
.feedback-dialog::backdrop{background:rgba(3,15,25,.78);backdrop-filter:blur(5px)}
.feedback-dialog-shell{position:relative;max-height:calc(100vh - 28px);overflow:auto;padding:28px;border-radius:24px;background:linear-gradient(155deg,#fff,#fffdf8);box-shadow:0 30px 90px rgba(0,0,0,.38)}
.feedback-dialog-close{position:absolute;top:14px;left:14px;width:42px;height:42px;border:1px solid #d8e2dd;border-radius:50%;background:#fff;color:var(--sf-navy);font-size:28px;line-height:1;cursor:pointer}
.feedback-dialog-heading{padding-inline:44px;text-align:center;margin-bottom:20px}.feedback-dialog-heading h2{margin:6px 0 7px;font-size:clamp(25px,4vw,34px)}.feedback-dialog-heading p{margin:0;color:#65736f}
.feedback-form-modal{box-shadow:none!important;border:1px solid #dbe5df!important;padding:22px!important}
.footer-social-inline{justify-content:flex-start!important;margin-top:14px!important}
.site-footer .footer-grid{grid-template-columns:1.2fr .72fr .72fr .95fr!important}
.policy-security-report .eyebrow{display:inline-block;margin-bottom:6px}.security-report-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.security-report-warning{margin:0;padding:12px 14px;border-right:4px solid #c79a45;background:#fff8e7;color:#6f531f;border-radius:12px}
@media(max-width:920px){.feedback-wrap-r3{grid-template-columns:1fr}.request-actions{grid-template-columns:1fr 1fr 1fr!important}.site-footer .footer-grid{grid-template-columns:1fr 1fr!important}.footer-contact-block{grid-column:1/-1}.footer-social-inline{justify-content:center!important}}
@media(max-width:700px){.hero-trust{grid-template-columns:1fr!important}.editorial-role-card small{font-size:16px!important}.feedback-dialog-shell{padding:24px 16px 18px;border-radius:18px}.feedback-form-modal{grid-template-columns:1fr!important;padding:18px!important}.security-report-actions .btn{width:100%}}
@media(max-width:620px){.request-actions{grid-template-columns:1fr!important}}


/* R4 final-review refinements — approved 2026-08-04 */
.hero-copy .hero-year-chip{color:#111!important}
.hero-trust.hero-trust-classic{
  display:flex!important;
  align-items:flex-start!important;
  flex-wrap:wrap!important;
  gap:0!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:24px!important;
}
.hero-trust.hero-trust-classic span{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:0!important;
  padding:8px 16px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
}
.hero-trust.hero-trust-classic span+span::before{
  content:"";
  position:absolute;
  top:7px;
  bottom:7px;
  right:0;
  width:1px;
  background:rgba(211,168,67,.72);
}
.hero-trust.hero-trust-classic span i{
  display:inline!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:transparent!important;
  color:#f2d27d!important;
  font-size:16px!important;
  line-height:1!important;
}
.hero-trust.hero-trust-classic span b{
  color:#fff!important;
  font-size:14px!important;
  line-height:1.5!important;
  white-space:nowrap;
}
.product-info h1{text-wrap:balance;overflow-wrap:normal;word-break:normal}
.product-info h1 .product-year{white-space:nowrap;display:inline-block}
.feedback-status.is-success{display:block!important;padding:11px 13px;border:1px solid #9dcfba;background:#edf9f4;color:#075b49;border-radius:10px;font-weight:800}
.security-report-email{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:2px 0 16px;color:#526663}.security-report-email span{font-weight:800;color:var(--sf-navy)}.security-report-email strong{font-size:14px;overflow-wrap:anywhere}
[data-cart-checkout]:disabled,[data-cart-checkout][aria-disabled="true"]{cursor:not-allowed!important;opacity:.55!important;filter:grayscale(.22)!important;transform:none!important;box-shadow:none!important}
.field-hint{display:block;margin-top:5px;color:#687b78;font-size:12.5px;font-weight:500;line-height:1.55}
@media(max-width:700px){
  .hero-trust.hero-trust-classic{display:flex!important;gap:0!important;width:100%!important}
  .hero-trust.hero-trust-classic span{padding:7px 10px!important;flex:1 1 auto!important;justify-content:center!important}
  .hero-trust.hero-trust-classic span b{font-size:12.5px!important;white-space:normal;text-align:center}
  .hero-trust.hero-trust-classic span+span::before{top:8px;bottom:8px}
}
@media(max-width:480px){
  .hero-trust.hero-trust-classic{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .hero-trust.hero-trust-classic span{justify-content:flex-start!important;padding:7px 2px!important}
  .hero-trust.hero-trust-classic span+span::before{display:none}
}
