/* JessoreInfo v1.2: a self-contained visual layer for the submission, directory and profile UI. */
.ji-wrap,.ji-directory,.ji-profile{
  --ji-accent:#176b55;
  --ji-accent-dark:#0d3c34;
  --ji-ink:#17332f;
  --ji-muted:#64736e;
  --ji-line:#dde7e1;
  --ji-soft:#f5f8f4;
  --ji-soft-blue:#eaf5ef;
  --ji-success:#156c4b;
  --ji-success-bg:#ebf8ef;
  --ji-card:#fff;
  --ji-radius:22px;
  --ji-shadow:0 22px 65px rgba(10,48,40,.09);
  color:var(--ji-ink);
  font-family:system-ui,-apple-system,"Noto Sans Bengali","Hind Siliguri","Nirmala UI",sans-serif;
  line-height:1.55;
}
.ji-wrap :where(button,input,select,textarea),.ji-directory :where(button,input,select){font-family:inherit}
.ji-wrap :where(a,button,input,select,textarea):focus-visible,
.ji-directory :where(a,button,input,select):focus-visible,
.ji-profile :where(a,button):focus-visible{outline:3px solid #dca14d;outline-offset:3px}

/* A distinct, lightweight identity: deep green, citrus and warm paper. */
.ji-form-intro,.ji-directory-hero{
  position:relative;isolation:isolate;overflow:hidden;display:grid;
  grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:24px;
  padding:42px clamp(24px,5vw,58px);border-radius:26px;
  background:radial-gradient(circle at 85% 12%,#396e59 0,transparent 27%),
             radial-gradient(circle at 8% 100%,#246c5c 0,transparent 28%),#103d37;
  color:#fff;box-shadow:0 22px 55px rgba(8,44,36,.16);
}
.ji-form-intro:after,.ji-directory-hero:after{
  content:"";position:absolute;inset:-40% -4% auto auto;width:45%;aspect-ratio:1;
  border:1px solid rgba(255,255,255,.1);border-radius:50%;pointer-events:none;
}
.ji-intro-copy,.ji-directory-hero-copy{position:relative;z-index:2;max-width:650px}
.ji-intro-kicker{margin:0 0 14px!important;color:#cfebcd!important;font-size:12px!important;font-weight:800!important;letter-spacing:.12em}
.ji-intro-kicker span{margin:0 5px;color:#e2b76c}
.ji-form-intro h2,.ji-directory-hero h2{
  margin:0 0 12px!important;color:#fff!important;
  font-size:clamp(26px,3.4vw,43px)!important;font-weight:800!important;
  letter-spacing:-.025em;line-height:1.27!important;
}
.ji-form-intro .ji-intro-copy>p:not(.ji-intro-kicker),
.ji-directory-hero-copy>p:not(.ji-intro-kicker){margin:0;color:#d5e7dd;max-width:60ch;font-size:15px;line-height:1.8}
.ji-intro-features{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.ji-intro-features span{padding:7px 11px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.08);color:#f3f9f2;font-size:12px;font-weight:700;backdrop-filter:blur(4px)}
.ji-intro-features span:before{content:"✓";margin-right:6px;color:#f6cf85}
.ji-intro-stamp,.ji-hero-mark{
  position:relative;z-index:1;display:grid;place-items:center;width:152px;height:152px;
  border:1px solid rgba(255,255,255,.32);border-radius:38px;
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.035));
  box-shadow:inset 0 1px rgba(255,255,255,.2),0 18px 30px rgba(0,0,0,.09);
  transform:rotate(-8deg);color:#fff;font-size:55px;font-weight:900;letter-spacing:-.12em;
}
.ji-intro-stamp span{position:absolute;bottom:24px;left:0;right:0;text-align:center;color:#d3f0d1;font-size:10px;letter-spacing:.22em;transform:rotate(8deg)}
.ji-intro-orbit{position:absolute;z-index:0;right:12%;bottom:-145px;width:340px;height:340px;border:1px solid rgba(255,255,255,.13);border-radius:50%}
.ji-intro-orbit span{position:absolute;inset:35px;border:1px solid rgba(255,255,255,.1);border-radius:50%}
.ji-intro-orbit span:nth-child(2){inset:70px}.ji-intro-orbit span:nth-child(3){inset:104px}
.ji-hero-mark{display:flex;align-items:center;justify-content:center;gap:5px;font-size:66px;letter-spacing:-.15em}
.ji-hero-mark span:last-of-type{color:#e9bd75}.ji-hero-mark i{position:absolute;bottom:20px;right:25px;width:10px;height:10px;border-radius:50%;background:#d6d98a}

/* Submission and the three-step payment path. */
.ji-flow-wrap{max-width:1030px}.ji-stepper{margin:25px 0 18px;padding:0 20px}
.ji-step{color:#7b9188}.ji-step>span{width:38px;height:38px;border:1px solid #cbdcd2;background:#fff;color:#52675e;box-shadow:0 3px 10px rgba(14,52,43,.05)}
.ji-step.is-current>span{background:#176b55;border-color:#176b55}.ji-step.is-complete>span{background:#176b55;border-color:#176b55}
.ji-step.is-complete:not(:last-child):after{background:#73b69b}
.ji-form-modern,.ji-payment-card,.ji-complete-card{border-color:#e2e9e4;border-radius:22px;box-shadow:var(--ji-shadow)}
.ji-form-heading{padding:30px 34px;background:#f7faf6}.ji-form-heading h2{font-size:clamp(21px,2vw,29px);font-weight:800}
.ji-secure-note{background:#e8f4ea;border-color:#cce7d8;color:#165e45}
.ji-form-section{padding:27px 34px;border-bottom-color:#e8eee9}.ji-section-title h3{font-size:19px}
.ji-form label{color:#28433a}.ji-form input:not([type="radio"]):not([type="checkbox"]),
.ji-form select,.ji-form textarea,.ji-directory-filter input,.ji-directory-filter select,.ji-sort-form select{
  min-height:50px;border-color:#ccdcd2;border-radius:12px;background:#fff;
  box-shadow:0 1px 2px rgba(8,45,35,.025);color:#15382f;
}
.ji-form input:focus,.ji-form select:focus,.ji-form textarea:focus,
.ji-directory-filter input:focus,.ji-directory-filter select:focus{border-color:#176b55;box-shadow:0 0 0 4px rgba(23,107,85,.14)}
.ji-form textarea{min-height:132px}.ji-form input[type="file"]{border-style:dashed!important;background:#f8fbf7!important}
.ji-upload-preview{background:linear-gradient(145deg,#f9fbf8,#eff6ed);border-color:#bdd5c4}
.ji-optional-panel{background:#fbfdfa}.ji-optional-panel>summary{color:#23463b}.ji-location-panel{background:#f3f8f3;border-color:#d7e8d9}
.ji-plan-section{background:#f8faf6}.ji-plan-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.ji-plan-card{min-height:150px;border-color:#cadbd0;border-radius:16px;padding:20px!important}
.ji-plan-card:hover{border-color:#70aa8d;box-shadow:0 10px 25px rgba(9,59,45,.11)}
.ji-plan-card:has(input:checked){border-color:#176b55;background:#f0f8f1;box-shadow:0 0 0 3px rgba(23,107,85,.12)}
.ji-plan-card:has(input:checked) .ji-plan-check{border-color:#176b55}
.ji-plan-card:has(input:focus-visible){outline:3px solid #dca14d;outline-offset:3px}
.ji-plan-name{color:#245746}.ji-plan-card strong{font-size:29px;color:#153a30}
.ji-submit-row{padding:25px 34px;background:#fff}.ji-submit-row>div strong{color:#173b31}
.ji-button{border-radius:11px!important}.ji-button-primary{background:#176b55!important;border-color:#176b55!important;box-shadow:0 8px 18px rgba(23,107,85,.21)!important}
.ji-button-primary:hover{background:#105542!important;border-color:#105542!important}
.ji-button-soft{background:#f1f7f2!important;border-color:#d6e7da!important;color:#235244!important}
.ji-icon-button{border-color:#d6e5d9;color:#176b55!important}.ji-icon-button:hover{background:#eef7ee;border-color:#99c9a9}
.ji-notice{border-radius:13px}.ji-complete-icon{width:74px;height:74px;background:#dff4e4;color:#156c4b;font-size:34px}
.ji-payment-head{background:#f5faf4;padding:32px 34px}.ji-payment-card h2{font-size:27px}.ji-payment-amount strong{color:#176b55}
.ji-payment-values>div{background:#f7faf6;border-color:#dae7dc;border-radius:14px}.ji-payment-instructions{background:#edf7ef;border-left-color:#176b55;color:#2f5143}
.ji-copy{border-color:#c9ddcd;color:#205443}.ji-submitting button[type="submit"]{opacity:.72;cursor:progress}

/* Search and browsable directory cards. */
.ji-directory{max-width:1240px}.ji-directory-hero{margin-bottom:24px;padding-block:36px}
.ji-directory-hero h2{font-size:clamp(27px,3.2vw,42px)!important}
.ji-directory-filter{border-color:#dce9dd;border-radius:18px;padding:16px;box-shadow:0 8px 30px rgba(16,60,48,.055)}
.ji-results-bar{padding:2px 2px 4px}.ji-results-bar strong{color:#134c3d}
.ji-view-toggle{border-color:#dce7dc}.ji-view-toggle button.is-active{background:#e4f2e7;color:#176b55}
.ji-directory-grid{gap:22px}.ji-listing-card{border-color:#e0e9e0;border-radius:20px;box-shadow:0 7px 28px rgba(10,48,40,.055)}
.ji-listing-card:hover{transform:translateY(-4px);border-color:#bdd7c3;box-shadow:0 20px 45px rgba(10,48,40,.11)}
.ji-card-media{aspect-ratio:16/9;background:radial-gradient(circle at 75% 28%,#d8e9d5 0,transparent 31%),linear-gradient(135deg,#edf6ed,#f7f8f1)}
.ji-card-media:after{content:"";position:absolute;inset:auto -40px -115px auto;width:230px;height:230px;border:1px solid rgba(16,73,53,.09);border-radius:50%;pointer-events:none}
.ji-card-image{padding:12px!important;position:relative;z-index:1}.ji-card-placeholder{position:relative;z-index:1;width:82px;height:82px;background:#176b55;color:#f8f9ef;font-size:27px;font-weight:900;letter-spacing:-.07em;box-shadow:0 12px 23px rgba(8,65,45,.18)}
.ji-card-type{z-index:2;background:#153e33;color:#fff;padding:7px 11px;left:15px;top:15px}
.ji-card-body{padding:21px}.ji-card-kicker{color:#176b55;letter-spacing:.045em}.ji-listing-card h3{font-size:20px;line-height:1.4}
.ji-listing-card h3 a{color:#19372f!important}.ji-listing-card h3 a:hover{color:#176b55!important}.ji-card-excerpt{color:#56675f}
.ji-card-actions{margin-top:20px}.ji-card-actions .ji-button{min-height:46px}.ji-pagination .current{background:#176b55;border-color:#176b55}
.ji-empty-state{background:#f4f8f2;border-color:#c5d9c5}

/* Business profile and its contact panel. */
.ji-profile{max-width:1180px}.ji-profile-brandline{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:#3c6f5a;font-size:12px;font-weight:800;letter-spacing:.04em}
.ji-brand-dot{width:9px;height:9px;border-radius:50%;background:#d7a55f;box-shadow:0 0 0 4px #f7eddc}
.ji-profile-topline{padding:17px 20px;border-radius:16px;background:#123f37;color:#fff}
.ji-profile .ji-pill{background:#d7eee0;color:#164c3b}.ji-profile .ji-pill-soft{background:rgba(255,255,255,.13);color:#f5faf6}
.ji-profile .ji-status{background:rgba(255,255,255,.14);color:#f3fff5}.ji-profile .ji-status-active{background:#d8f2dc;color:#126343}
.ji-profile .ji-status-expired,.ji-profile .ji-status-rejected{background:#fff0e9;color:#8b3e22}
.ji-share-button{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}
.ji-gallery-shell{border-color:#e0ebe0;border-radius:22px;box-shadow:0 12px 38px rgba(13,54,40,.08)}
.ji-gallery-main,.ji-gallery-thumbs button{background:#f2f7f1}.ji-profile-summary{padding:23px 25px;border-color:#deeadf;border-radius:18px;background:#f8fbf6;box-shadow:0 5px 22px rgba(14,61,43,.035)}
.ji-profile-type{color:#176b55}.ji-primary-actions .ji-button{min-height:48px}.ji-content-card,.ji-info-card,.ji-renew-box{border-color:#e0eae0;border-radius:18px;box-shadow:0 6px 24px rgba(12,50,39,.045)}
.ji-content-card,.ji-info-card{padding:25px}.ji-content-card h2,.ji-info-card h2{color:#173d31}.ji-profile-description{color:#365347;line-height:1.9}
.ji-info-list>div{border-bottom-color:#e9f0e8}.ji-contact-links>a{border-color:#dfeadf;border-radius:12px;background:#f9fcf8}.ji-contact-links>a:hover{background:#edf7ee;border-color:#add0b5}
.ji-contact-links>a>span{background:#e5f3e9;color:#166448}.ji-external-links a,.ji-card-section-head a{color:#176b55!important}
.ji-renew-box>summary{background:#f7fbf6}.ji-map-frame{background:#e7f0e8}
.ji-lightbox{background:rgba(5,21,18,.91)}

@media(max-width:780px){
  .ji-form-intro,.ji-directory-hero{grid-template-columns:1fr;padding:31px 22px;border-radius:20px}
  .ji-intro-stamp,.ji-hero-mark{display:none}
  .ji-form-intro:after,.ji-directory-hero:after{width:70%}
  .ji-step strong{display:block;font-size:11px;white-space:nowrap}
  .ji-step{gap:5px}.ji-step>span{width:30px;height:30px;flex:none}
  .ji-step:not(:last-child):after{top:15px;left:37px;right:4px}
  .ji-form-heading,.ji-form-section,.ji-optional-panel>summary,.ji-optional-content,.ji-submit-row{padding-left:20px;padding-right:20px}
  .ji-directory-hero{margin-bottom:18px}.ji-directory-filter{border-radius:16px}
  .ji-card-media{aspect-ratio:16/9}.ji-profile-topline{gap:14px}.ji-profile-summary{padding:20px}
  .ji-mobile-actions{bottom:max(10px,env(safe-area-inset-bottom));border-color:#b6d5bc;border-radius:16px;box-shadow:0 15px 34px rgba(7,45,31,.22)}
  .ji-mobile-actions a:first-child{background:#176b55;color:#fff!important}
}
@media(max-width:480px){
  .ji-form-intro,.ji-directory-hero{padding:27px 20px}.ji-intro-features{gap:6px}.ji-intro-features span{font-size:11px;padding:6px 9px}
  .ji-form-intro h2,.ji-directory-hero h2{font-size:28px!important}.ji-stepper{padding:0 2px}.ji-step{font-size:11px}
  .ji-step>strong{font-size:10px}.ji-card-body{padding:19px}.ji-listing-card h3{font-size:19px}
  .ji-payment-values>div{padding-right:62px}.ji-profile-topline{padding:14px 15px}
  .ji-profile .ji-gallery-main{min-height:220px}.ji-profile-summary{padding:17px}
}
@media(prefers-reduced-motion:reduce){
  .ji-wrap *, .ji-directory *, .ji-profile *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
