/* HOPPT application archive; scoped to category-application.php. */
.hoppt-app{color:#173d31;overflow:clip}
.hoppt-app *, .hoppt-app *::before, .hoppt-app *::after{box-sizing:border-box}
.hoppt-app .hal-shell{width:min(100% - 48px,1280px);margin-inline:auto}
.hoppt-app h1,.hoppt-app h2,.hoppt-app h3,.hoppt-app p{margin-top:0}
.hoppt-app a{text-decoration:none}
.hoppt-app a:focus-visible{outline:3px solid #24bf90;outline-offset:3px}
.hoppt-app [id]{scroll-margin-top:116px}
.hoppt-app .hal-breadcrumb{padding-block:22px;color:#65786f;font-size:14px}
.hoppt-app .hal-breadcrumb a{color:#087e61}
.hoppt-app .hal-breadcrumb a:hover{text-decoration:underline}
.hoppt-app .hal-eyebrow{margin:0 0 14px;color:#087e61;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.hoppt-app .hal-section{padding-block:clamp(68px,7vw,104px)}
.hoppt-app .hal-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 10% 0%,#176f58 0,transparent 37%),linear-gradient(125deg,#073d32 0%,#0b5a49 63%,#088168 100%);color:#fff}
.hoppt-app .hal-hero::after{content:'';position:absolute;z-index:-1;right:-180px;bottom:-360px;width:650px;height:650px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 100px rgba(255,255,255,.025),0 0 0 200px rgba(255,255,255,.016)}
.hoppt-app .hal-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(40px,6vw,90px);align-items:center;padding-block:clamp(66px,7vw,105px)}
.hoppt-app .hal-hero .hal-eyebrow{color:#a8e8cb}
.hoppt-app .hal-hero h1{max-width:730px;margin:0 0 25px;color:#fff;font-size:clamp(40px,5vw,70px);line-height:1.08;letter-spacing:-.04em}
.hoppt-app .hal-hero-intro{max-width:700px;color:#e0f2e8;font-size:17px;line-height:1.7}
.hoppt-app .hal-hero-intro p{margin:0 0 15px;color:inherit}
.hoppt-app .hal-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:31px}
.hoppt-app .hal-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:13px 24px;border-radius:99px;background:#fff;color:#07543f;font-weight:700;line-height:1.3;transition:transform .2s,box-shadow .2s}
.hoppt-app .hal-button:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.14)}
.hoppt-app .hal-text-link{color:#fff;font-weight:700;text-underline-offset:5px}
.hoppt-app .hal-text-link:hover{text-decoration:underline;color:#c5f3db}
.hoppt-app .hal-hero-panel{padding:30px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:rgba(255,255,255,.08);box-shadow:0 25px 65px rgba(1,32,23,.17);backdrop-filter:blur(7px)}
.hoppt-app .hal-panel-label{color:#abe6ca;font-size:12px;font-weight:700;letter-spacing:.13em}
.hoppt-app .hal-hero-panel h2{margin:14px 0 25px;color:#fff;font-size:clamp(24px,2.5vw,34px);line-height:1.22}
.hoppt-app .hal-hero-panel ol{margin:0;padding:0;list-style:none}
.hoppt-app .hal-hero-panel li{display:flex;align-items:center;gap:18px;padding:15px 0;border-top:1px solid rgba(255,255,255,.17);color:#e6f3ed;line-height:1.4}
.hoppt-app .hal-hero-panel b{color:#abe6ca;font-size:13px;letter-spacing:.08em}
.hoppt-app .hal-section-nav{border-bottom:1px solid #d9e9e0;background:#fff}
.hoppt-app .hal-section-nav .hal-shell{display:flex;align-items:center;flex-wrap:wrap;gap:8px 34px;padding-block:12px}
.hoppt-app .hal-section-nav a{display:inline-flex;align-items:center;min-height:38px;color:#2c5745;font-size:14px;font-weight:700;white-space:nowrap}
.hoppt-app .hal-section-nav a:hover{color:#088967}
.hoppt-app .hal-section-nav a:last-child{margin-left:auto;color:#087e61}
.hoppt-app .hal-heading{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:end;gap:24px 70px;margin-bottom:34px}
.hoppt-app .hal-heading h2{max-width:600px;margin:0;color:#113e30;font-size:clamp(31px,3.3vw,46px);line-height:1.16;letter-spacing:-.025em}
.hoppt-app .hal-heading>p{max-width:68ch;margin:0;color:#5b6e62;font-size:16px;line-height:1.75}
.hoppt-app .hal-areas{background:#fff}
.hoppt-app .hal-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hoppt-app .hal-area-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dbe8e0;border-radius:10px;background:#fff;box-shadow:0 14px 34px rgba(17,69,48,.045);transition:transform .2s,box-shadow .2s}
.hoppt-app .hal-area-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(17,69,48,.1)}
.hoppt-app .hal-area-media{display:block;overflow:hidden;background:#edf4ef;aspect-ratio:16/8.5}
.hoppt-app .hal-area-media img{display:block;width:100%;height:100%;object-fit:cover}
.hoppt-app .hal-area-body{display:flex;flex-direction:column;flex:1;padding:23px 25px 26px}
.hoppt-app .hal-index{color:#0a8a69;font-size:12px;font-weight:700;letter-spacing:.1em}
.hoppt-app .hal-area-card h3{margin:12px 0;color:#153e30;font-size:22px;line-height:1.27}
.hoppt-app .hal-area-card h3 a{color:inherit}
.hoppt-app .hal-area-card h3 a:hover{color:#087e61}
.hoppt-app .hal-area-card p{margin:0;color:#5a6f62;font-size:15px;line-height:1.68}
.hoppt-app .hal-focus{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:20px;color:#51685a;font-size:13px;line-height:1.5}
.hoppt-app .hal-focus strong{color:#174331}
.hoppt-app .hal-review{background:#eef7f1}
.hoppt-app .hal-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.hoppt-app .hal-review-grid article{min-width:0;padding:25px;border:1px solid #d4e6d9;border-top:3px solid #0b9a72;border-radius:0 0 8px 8px;background:#fff}
.hoppt-app .hal-review-grid article>span{color:#0a9b74;font-size:21px;font-weight:700}
.hoppt-app .hal-review-grid h3{margin:22px 0 11px;color:#173e30;font-size:20px;line-height:1.3}
.hoppt-app .hal-review-grid p{margin:0;color:#5a6f62;font-size:15px;line-height:1.65}
.hoppt-app .hal-review-links{display:flex;flex-wrap:wrap;gap:18px 30px;margin-top:27px}
.hoppt-app .hal-review-links a{color:#087e61;font-weight:700;text-underline-offset:5px}
.hoppt-app .hal-review-links a:hover{text-decoration:underline}
.hoppt-app .hal-examples{background:#fff}
.hoppt-app .hal-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hoppt-app .hal-example-grid article{display:flex;flex-direction:column;min-width:0;padding:28px;border:1px solid #dce9e1;border-radius:9px;background:#f8fbf9}
.hoppt-app .hal-example-grid article>span{color:#087e61;font-size:12px;font-weight:700;letter-spacing:.1em}
.hoppt-app .hal-example-grid h3{margin:22px 0 11px;color:#143e2f;font-size:23px}
.hoppt-app .hal-example-grid p{color:#5b6d61;line-height:1.7}
.hoppt-app .hal-example-grid strong{display:block;margin:16px 0 20px;padding:12px 15px;border-left:3px solid #0b9a72;background:#e9f5ec;color:#174a36;line-height:1.4}
.hoppt-app .hal-example-grid a{margin-top:auto;color:#087e61;font-weight:700;text-underline-offset:5px}
.hoppt-app .hal-example-grid a:hover{text-decoration:underline}
.hoppt-app .hal-guides{background:#f4f8f5}
.hoppt-app .hal-guides-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.hoppt-app .hal-guide-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dce8df;border-radius:9px;background:#fff}
.hoppt-app .hal-guide-media{display:block;aspect-ratio:16/9;overflow:hidden;background:#e9f1ec}
.hoppt-app .hal-guide-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
.hoppt-app .hal-guide-card:hover img{transform:scale(1.035)}
.hoppt-app .hal-guide-body{display:flex;flex-direction:column;flex:1;padding:23px 25px 26px}
.hoppt-app .hal-guide-body>span{color:#0a8a69;font-size:12px;font-weight:700;letter-spacing:.1em}
.hoppt-app .hal-guide-body h3{margin:12px 0 25px;color:#173e30;font-size:22px;line-height:1.3}
.hoppt-app .hal-guide-body h3 a{color:inherit}
.hoppt-app .hal-guide-body h3 a:hover{color:#087e61}
.hoppt-app .hal-guide-link{margin-top:auto;color:#087e61;font-weight:700}
.hoppt-app .hal-guide-link:hover{text-decoration:underline}
.hoppt-app .navigation.pagination{margin-top:35px}
.hoppt-app .nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.hoppt-app .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:8px 13px;border:1px solid #c9ded0;border-radius:6px;background:#fff;color:#25533f}
.hoppt-app .page-numbers.current,.hoppt-app .page-numbers:hover{border-color:#087e61;background:#087e61;color:#fff}
.hoppt-app .hal-contact{padding-block:clamp(60px,6vw,90px);background:linear-gradient(125deg,#064333,#08735a);color:#fff}
.hoppt-app .hal-contact-grid{display:flex;align-items:center;justify-content:space-between;gap:30px 75px}
.hoppt-app .hal-contact .hal-eyebrow{color:#abe6c8}
.hoppt-app .hal-contact h2{max-width:700px;margin:0 0 12px;color:#fff;font-size:clamp(31px,3.3vw,46px)}
.hoppt-app .hal-contact p:not(.hal-eyebrow){max-width:780px;margin:0;color:#d9eee3;line-height:1.7}
.hoppt-app .hal-contact .hal-button{flex:0 0 auto}
@media(max-width:1023px){
 .hoppt-app .hal-hero-grid{grid-template-columns:1fr}
 .hoppt-app .hal-hero-panel{max-width:650px}
 .hoppt-app .hal-area-grid,.hoppt-app .hal-example-grid,.hoppt-app .hal-guides-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hoppt-app .hal-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hoppt-app .hal-heading{gap:24px}
}
@media(max-width:767px){
 .hoppt-app .hal-shell{width:min(100% - 32px,1280px)}
 .hoppt-app .hal-breadcrumb{padding-block:16px}
 .hoppt-app .hal-hero-grid{padding-block:54px}
 .hoppt-app .hal-hero h1{font-size:clamp(37px,10vw,52px)}
 .hoppt-app .hal-hero-intro{font-size:16px}
 .hoppt-app .hal-hero-panel{padding:23px}
 .hoppt-app .hal-section-nav .hal-shell{flex-wrap:nowrap;overflow-x:auto;gap:20px;scrollbar-width:thin}
 .hoppt-app .hal-section-nav a:last-child{margin-left:0}
 .hoppt-app .hal-heading{grid-template-columns:1fr}
 .hoppt-app .hal-area-grid,.hoppt-app .hal-example-grid,.hoppt-app .hal-guides-grid,.hoppt-app .hal-review-grid{grid-template-columns:1fr}
 .hoppt-app .hal-area-body,.hoppt-app .hal-guide-body{padding:21px}
 .hoppt-app .hal-contact-grid{align-items:flex-start;flex-direction:column}
}
/* Give the current priority systems a clear lead; keep legacy application art in a quieter grid. */
.hoppt-app .hal-area-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.hoppt-app .hal-area-card--featured{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:290px;border-radius:14px;background:#f7fbf8}
.hoppt-app .hal-area-card--featured .hal-area-media{position:relative;min-height:290px;aspect-ratio:auto}
.hoppt-app .hal-area-card--featured .hal-area-media img{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover}
.hoppt-app .hal-area-card--featured .hal-area-body{padding:30px}
.hoppt-app .hal-area-card--featured h3{font-size:25px}
.hoppt-app .hal-area-card:not(.hal-area-card--featured) .hal-area-media{position:relative;aspect-ratio:16/9}
.hoppt-app .hal-area-card:not(.hal-area-card--featured) .hal-area-media img{height:auto!important;aspect-ratio:16/9;object-fit:cover;filter:saturate(.78) contrast(.98)}
.hoppt-app .hal-area-card:not(.hal-area-card--featured) .hal-area-media::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,65,48,.12),transparent 65%);pointer-events:none}
.hoppt-app .hal-area-card:not(.hal-area-card--featured) .hal-area-body{padding:20px 21px 23px}
.hoppt-app .hal-area-card:not(.hal-area-card--featured) h3{font-size:20px}
.hoppt-app .hal-guide-media img{height:auto!important;aspect-ratio:16/9;object-fit:cover}
@media(max-width:1199px){
 .hoppt-app .hal-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hoppt-app .hal-area-card--featured{grid-column:auto;display:flex;min-height:0}
 .hoppt-app .hal-area-card--featured .hal-area-media{min-height:0;aspect-ratio:16/9}
 .hoppt-app .hal-area-card--featured .hal-area-media img{position:static;height:auto!important;aspect-ratio:16/9}
 .hoppt-app .hal-area-card--featured .hal-area-body{padding:24px}
}
@media(max-width:767px){.hoppt-app .hal-area-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hoppt-app *{transition:none!important}}
