/* SD Badminton Coach Profile — all rules scoped to .sdb-app */
html:has(.sdb-app){scroll-behavior:smooth;overflow-x:clip}
body:has(.sdb-app){overflow-x:clip}

.sdb-app{
  --bg:#040a24;--bg2:#081445;--panel:rgba(14,28,86,.55);--line:rgba(80,140,255,.22);
  --blue:#1f6bff;--cyan:#19d3ff;--violet:#8a4bff;--green:#35e06f;--gold:#ffc928;--red:#ff3d57;
  --ink:#eef4ff;--muted:#a3b6e8;
  --display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
  --body:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  position:relative;isolation:isolate;box-sizing:border-box;
  width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  clip-path:inset(0);
  background:
    radial-gradient(1200px 600px at 85% -10%,rgba(138,75,255,.35),transparent 60%),
    radial-gradient(900px 700px at -10% 30%,rgba(31,107,255,.30),transparent 60%),
    linear-gradient(180deg,#040a24 0%,#061038 45%,#030820 100%);
  color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-align:left;
}
.sdb-app *,.sdb-app *::before,.sdb-app *::after{box-sizing:border-box}
.sdb-app h1,.sdb-app h2,.sdb-app h3,.sdb-app p,.sdb-app ul,.sdb-app ol{margin:0;padding:0}
.sdb-app a{color:inherit;text-decoration:none}
.sdb-app ul,.sdb-app ol{list-style:none}
.sdb-app button{font:inherit;color:inherit;cursor:pointer}
.sdb-ic{width:1.15em;height:1.15em;flex:none}

/* ---------- background layers ---------- */
.sdb-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.sdb-grid{
  position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.35;
  background-image:
    linear-gradient(rgba(60,120,255,.18) 1px,transparent 1px),
    linear-gradient(90deg,rgba(60,120,255,.18) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000 10%,transparent 70%);
  mask-image:radial-gradient(ellipse at 50% 30%,#000 10%,transparent 70%);
  animation:sdb-grid 18s linear infinite;
}
@keyframes sdb-grid{to{background-position:0 64px,64px 0}}
.sdb-orb{position:fixed;z-index:0;pointer-events:none;border-radius:50%;filter:blur(70px);opacity:.55}
.sdb-orb--a{width:46vmax;height:46vmax;left:-14vmax;top:20vh;background:radial-gradient(circle,#1f6bff,transparent 65%);animation:sdb-float 16s ease-in-out infinite alternate}
.sdb-orb--b{width:40vmax;height:40vmax;right:-12vmax;bottom:-8vh;background:radial-gradient(circle,#8a4bff,transparent 65%);animation:sdb-float 20s ease-in-out infinite alternate-reverse}
@keyframes sdb-float{to{transform:translate3d(6vmax,-5vmax,0) scale(1.15)}}
.sdb-glow{position:fixed;left:0;top:0;width:420px;height:420px;margin:-210px 0 0 -210px;z-index:0;pointer-events:none;
  background:radial-gradient(circle,rgba(25,211,255,.18),transparent 65%);opacity:0;transition:opacity .4s;will-change:transform}
.sdb-glow.is-on{opacity:1}

.sdb-shell{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:0 20px}

/* ---------- nav ---------- */
.sdb-nav{
  position:sticky;top:12px;z-index:50;display:flex;align-items:center;justify-content:center;
  width:max-content;max-width:100%;margin:12px auto 0;padding:10px 22px 10px 14px;border-radius:999px;
  background:rgba(8,18,64,.62);border:1px solid var(--line);
  -webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);
  box-shadow:0 10px 40px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.06);
}
body.admin-bar .sdb-nav{top:44px}
.sdb-brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-style:italic;font-weight:800;font-size:20px;letter-spacing:.02em;white-space:nowrap}
.sdb-brand__mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--violet));box-shadow:0 0 18px rgba(31,107,255,.7)}
.sdb-links{display:flex;gap:4px;margin-left:auto}
.sdb-links a{padding:8px 14px;border-radius:999px;font-size:14px;font-weight:600;color:var(--muted);transition:.25s}
.sdb-links a:hover,.sdb-links a.is-active{color:#fff;background:rgba(31,107,255,.25)}
.sdb-burger{display:none;margin-left:auto;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(31,107,255,.2);position:relative}
.sdb-burger span{position:absolute;left:12px;right:12px;height:2px;background:#fff;border-radius:2px;transition:.3s}
.sdb-burger span:first-child{top:16px}.sdb-burger span:last-child{top:24px}
.sdb-burger[aria-expanded="true"] span:first-child{top:20px;transform:rotate(45deg)}
.sdb-burger[aria-expanded="true"] span:last-child{top:20px;transform:rotate(-45deg)}

/* ---------- buttons ---------- */
.sdb-btn{
  position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:14px 26px;border-radius:14px;border:0;font-weight:700;font-size:15px;color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  box-shadow:0 10px 30px rgba(31,107,255,.45),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .25s,box-shadow .25s;
}
.sdb-btn:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(31,107,255,.6),inset 0 1px 0 rgba(255,255,255,.3)}
.sdb-btn:active{transform:scale(.97)}
.sdb-btn--sm{padding:9px 18px;border-radius:999px;font-size:14px}
.sdb-btn--ghost{background:rgba(255,255,255,.05);border:1px solid var(--line);box-shadow:none;color:var(--ink)}
.sdb-btn--ghost:hover{background:rgba(31,107,255,.2);box-shadow:none}
.sdb-btn--block{width:100%}
.sdb-btn .sdb-ic{transition:transform .25s}.sdb-btn:hover .sdb-ic{transform:translateX(3px)}
.sdb-app :focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.sdb-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.45);transform:scale(0);animation:sdb-rip .6s ease-out forwards;pointer-events:none}
@keyframes sdb-rip{to{transform:scale(3.2);opacity:0}}

/* ---------- hero ---------- */
.sdb-hero{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:40px;padding:72px 0 56px;min-height:calc(100vh - 80px)}
.sdb-pill{display:inline-flex;align-items:center;gap:10px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(31,107,255,.14);font-size:13px;font-weight:600;color:#cfe0ff}
.sdb-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(53,224,111,.7);animation:sdb-pulse 2s infinite}
@keyframes sdb-pulse{70%{box-shadow:0 0 0 10px rgba(53,224,111,0)}100%{box-shadow:0 0 0 0 rgba(53,224,111,0)}}
.sdb-h1{
  margin-top:20px;font-family:var(--display);font-style:italic;font-weight:900;
  font-size:clamp(56px,10vw,128px);line-height:.92;letter-spacing:-.01em;text-transform:none;
  color:#fff;text-shadow:0 0 40px rgba(31,107,255,.55),0 6px 30px rgba(25,211,255,.25);
}
.sdb-role{margin-top:16px;font-family:var(--display);font-style:italic;font-weight:800;font-size:clamp(22px,3vw,32px);color:var(--cyan)}
.sdb-lead{margin-top:14px;max-width:52ch;color:var(--muted);font-size:17px}
.sdb-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sdb-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.sdb-chips li{padding:6px 14px;border-left:2px solid var(--cyan);font-size:14px;font-weight:600;color:#cfe0ff;background:linear-gradient(90deg,rgba(25,211,255,.14),transparent)}

.sdb-hero__media{display:flex;justify-content:center}
.sdb-figure{margin:0;display:flex;flex-direction:column;align-items:center;width:min(100%,420px)}
.sdb-photo{position:relative;width:100%;will-change:transform}
.sdb-js .sdb-photo.sdb-rv.is-in{transition:opacity .8s,filter .8s,transform .15s ease-out}
.sdb-photo__halo{z-index:0;position:absolute;left:4%;right:4%;bottom:4%;aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,var(--cyan),var(--violet),var(--blue),var(--green),var(--cyan));filter:blur(26px);opacity:.7;animation:sdb-spin 9s linear infinite}
.sdb-photo::before{content:"";z-index:0;position:absolute;left:4%;right:4%;bottom:4%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(120,180,255,.55);background:radial-gradient(circle at 50% 30%,rgba(31,107,255,.45),rgba(10,20,80,.85) 70%);box-shadow:inset 0 0 60px rgba(25,211,255,.25)}
@keyframes sdb-spin{to{transform:rotate(360deg)}}
.sdb-photo img{position:relative;z-index:1;display:block;width:100%;height:auto;max-width:100%;opacity:1;visibility:visible;filter:drop-shadow(0 20px 40px rgba(0,0,0,.5));-webkit-mask-image:linear-gradient(180deg,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,#000 82%,transparent 100%);-webkit-user-drag:none}
.sdb-caption{position:relative;margin-top:-6px;text-align:center}
.sdb-caption__txt{display:block;font-family:'Kaushan Script','Brush Script MT',cursive;font-size:clamp(34px,6vw,52px);line-height:1.1;color:#fff;transform:rotate(-3deg);text-shadow:0 0 18px rgba(25,211,255,.8),0 0 42px rgba(31,107,255,.7),0 4px 0 rgba(8,20,80,.8)}
.sdb-caption__line{display:block;width:70%;height:4px;margin:8px auto 0;border-radius:4px;background:linear-gradient(90deg,transparent,var(--cyan),var(--violet),var(--green),transparent);box-shadow:0 0 14px rgba(25,211,255,.8);transform:rotate(-2deg);animation:sdb-line 3.5s ease-in-out infinite}
@keyframes sdb-line{50%{width:90%;opacity:.7}}
.sdb-float{z-index:2;position:absolute;display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:12px;font-size:13px;font-weight:700;background:rgba(8,18,64,.8);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.sdb-float .sdb-ic{color:var(--gold)}
.sdb-float--a{right:-8px;top:12%;animation:sdb-bob 5s ease-in-out infinite}
.sdb-float--b{left:-10px;top:46%;animation:sdb-bob 6s ease-in-out -2s infinite}
.sdb-float--b .sdb-ic{color:var(--green)}
@keyframes sdb-bob{50%{margin-top:-12px}}

/* ---------- marquee ---------- */
.sdb-marquee{overflow:hidden;margin:0 -20px;border-block:1px solid var(--line);background:rgba(8,20,69,.5);padding:14px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.sdb-marquee__track{display:flex;gap:40px;width:max-content;animation:sdb-marq 30s linear infinite}
.sdb-marquee span{font-family:var(--display);font-style:italic;font-weight:800;font-size:26px;letter-spacing:.14em;text-transform:uppercase;color:rgba(190,215,255,.75);position:relative;padding-right:40px}
.sdb-marquee span::after{content:"";position:absolute;right:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--cyan)}
@keyframes sdb-marq{to{transform:translateX(-50%)}}

/* ---------- sections ---------- */
.sdb-sec{padding:96px 0 0}
.sdb-h2{font-family:var(--display);font-style:italic;font-weight:900;font-size:clamp(38px,6vw,68px);line-height:1;max-width:16ch;color:#fff}
.sdb-sub{margin-top:14px;color:var(--muted)}
.sdb-p{color:var(--muted);font-size:17px;max-width:60ch}
.sdb-p + .sdb-p{margin-top:14px}
.sdb-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.sdb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.sdb-stats div{padding:18px;border-radius:18px;background:var(--panel);border:1px solid var(--line)}
.sdb-stats strong{display:block;font-family:var(--display);font-style:italic;font-weight:900;font-size:44px;line-height:1;color:var(--cyan)}
.sdb-stats span{font-size:13px;color:var(--muted)}

/* programs */
.sdb-programs{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:36px}
.sdb-card{--c:var(--cyan);position:relative;text-align:left;display:flex;flex-direction:column;gap:6px;padding:22px 18px;border-radius:20px;background:var(--panel);border:1px solid color-mix(in srgb,var(--c) 55%,transparent);box-shadow:0 0 0 0 transparent,inset 0 0 40px color-mix(in srgb,var(--c) 10%,transparent);transition:transform .15s ease-out,box-shadow .3s,border-color .3s;overflow:hidden}
.sdb-card::before{content:"";position:absolute;inset:auto -30% -50% -30%;height:70%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 40%,transparent),transparent 65%);opacity:.5;transition:opacity .3s}
.sdb-card:hover{box-shadow:0 18px 50px color-mix(in srgb,var(--c) 30%,transparent),inset 0 0 40px color-mix(in srgb,var(--c) 14%,transparent)}
.sdb-card:hover::before{opacity:1}
.sdb-card > *{position:relative}
.sdb-card--cyan{--c:var(--cyan)}.sdb-card--green{--c:var(--green)}.sdb-card--gold{--c:var(--gold)}.sdb-card--red{--c:var(--red)}.sdb-card--violet{--c:#b58cff}
.sdb-card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;color:var(--c);border:2px solid var(--c);background:rgba(0,0,0,.25);margin-bottom:8px}
.sdb-card h3{font-family:var(--display);font-style:italic;font-weight:900;font-size:28px;line-height:1;color:#fff}
.sdb-card em{font-style:normal;font-size:13px;font-weight:700;color:var(--c)}
.sdb-card p{font-size:14px;color:var(--muted);margin-top:6px}
.sdb-card__go{margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--c)}
.sdb-card.is-picked{border-width:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 25%,transparent)}

/* features */
.sdb-features{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:36px}
.sdb-feat{grid-column:span 2;padding:26px;border-radius:22px;background:var(--panel);border:1px solid var(--line);transition:transform .15s ease-out,border-color .3s}
.sdb-feat:nth-child(4),.sdb-feat:nth-child(5){grid-column:span 3}
.sdb-feat:hover{border-color:rgba(25,211,255,.6)}
.sdb-feat__ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;margin-bottom:16px;color:var(--cyan);background:rgba(25,211,255,.1);border:2px solid rgba(25,211,255,.5)}
.sdb-feat:nth-child(2) .sdb-feat__ic{color:var(--green);border-color:rgba(53,224,111,.5);background:rgba(53,224,111,.1)}
.sdb-feat:nth-child(3) .sdb-feat__ic{color:var(--gold);border-color:rgba(255,201,40,.5);background:rgba(255,201,40,.1)}
.sdb-feat:nth-child(4) .sdb-feat__ic{color:var(--red);border-color:rgba(255,61,87,.5);background:rgba(255,61,87,.1)}
.sdb-feat:nth-child(5) .sdb-feat__ic{color:#b58cff;border-color:rgba(181,140,255,.5);background:rgba(181,140,255,.1)}
.sdb-feat h3{font-size:19px;font-weight:700;color:#fff}
.sdb-feat p{margin-top:6px;color:var(--muted);font-size:15px}

/* journey */
.sdb-steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}
.sdb-steps::before{content:"";position:absolute;left:5%;right:5%;top:25px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--violet),var(--green));opacity:.6}
.sdb-step{position:relative;padding-top:0}
.sdb-step__n{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;font-family:var(--display);font-style:italic;font-weight:900;font-size:26px;background:var(--bg2);border:2px solid var(--cyan);box-shadow:0 0 24px rgba(25,211,255,.5)}
.sdb-step h3{margin-top:16px;font-size:18px;font-weight:700}
.sdb-step p{margin-top:4px;color:var(--muted);font-size:15px}

/* contact */
.sdb-contact{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:start}
.sdb-list{display:grid;gap:12px;margin-top:22px}
.sdb-list li{display:flex;gap:12px;align-items:flex-start;color:#dbe7ff}
.sdb-list .sdb-ic{margin-top:4px;color:var(--cyan)}
.sdb-list a{text-decoration:underline;text-decoration-color:rgba(25,211,255,.5);text-underline-offset:3px}
.sdb-mapwrap{margin-top:26px;height:260px;border-radius:22px;overflow:hidden;border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.4)}
.sdb-mapwrap iframe{width:100%;height:100%;border:0;filter:invert(.92) hue-rotate(185deg) saturate(.8) brightness(.95)}
.sdb-form-card{position:sticky;top:96px;padding:28px;border-radius:26px;background:linear-gradient(160deg,rgba(18,36,112,.75),rgba(30,16,90,.7));border:1px solid var(--line);box-shadow:0 30px 80px rgba(0,0,0,.45);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.sdb-form h3{font-family:var(--display);font-style:italic;font-weight:900;font-size:32px;margin-bottom:14px}
.sdb-form label{display:block;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--muted)}
.sdb-form input,.sdb-form select,.sdb-form textarea{display:block;width:100%;margin-top:6px;padding:13px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(4,10,36,.65);color:#fff;font:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}
.sdb-form select option{background:#081445;color:#fff}
.sdb-form input:focus,.sdb-form select:focus,.sdb-form textarea:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(25,211,255,.25)}
.sdb-form input.is-bad{border-color:var(--red)}
.sdb-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sdb-form__note{margin-top:12px;min-height:20px;font-size:14px;color:var(--green)}
.sdb-form__note.is-err{color:#ff8da0}
.sdb-admin-note{margin-top:12px;padding:10px 12px;border-radius:10px;background:rgba(255,201,40,.12);border:1px dashed var(--gold);font-size:13px;color:#ffe08a}

.sdb-footer{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;margin-top:96px;padding:28px 0 40px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.sdb-footer strong{font-family:var(--display);font-style:italic;font-weight:800;font-size:20px;color:#fff}

/* ---------- reveal effects ---------- */
.sdb-js .sdb-rv{opacity:0;transform:translateY(28px);filter:blur(6px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1),filter .8s;transition-delay:calc(var(--d,0)*90ms)}
.sdb-js .sdb-rv.is-in{opacity:1;transform:none;filter:none}
.sdb-js .sdb-card.sdb-rv.is-in,.sdb-js .sdb-feat.sdb-rv.is-in{transition:opacity .8s,transform .15s ease-out,box-shadow .3s,border-color .3s,filter .8s}
.sdb-js [data-split]{overflow:visible}
.sdb-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.08em .12em .12em 0;margin-right:.02em}
.sdb-w > span{display:inline-block;transform:translateY(110%) rotate(6deg);transition:transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0)*70ms)}
[data-split].is-in .sdb-w > span{transform:none}
.sdb-h1 .sdb-w{padding-right:.2em}
.sdb-js .sdb-reveal-img{clip-path:inset(100% -60px 0 -60px);transition:clip-path 1.2s cubic-bezier(.7,0,.2,1) .15s,transform .15s ease-out}
.sdb-js .sdb-reveal-img.is-in{clip-path:inset(-60px -60px -60px -60px)}
.sdb-js .sdb-mapwrap.sdb-reveal-img{clip-path:inset(0 100% 0 0 round 22px)}
.sdb-js .sdb-mapwrap.sdb-reveal-img.is-in{clip-path:inset(0 0 0 0 round 22px)}

/* ---------- responsive ---------- */
@media (max-width:1020px){
  .sdb-programs{grid-template-columns:repeat(3,1fr)}
  .sdb-features{grid-template-columns:repeat(2,1fr)}
  .sdb-feat,.sdb-feat:nth-child(4),.sdb-feat:nth-child(5){grid-column:auto}
  .sdb-feat:nth-child(5){grid-column:span 2}
  .sdb-steps{grid-template-columns:repeat(2,1fr);row-gap:32px}.sdb-steps::before{display:none}
}
@media (max-width:860px){
  
  .sdb-burger{display:block}
  .sdb-links{position:absolute;left:0;right:0;top:calc(100% + 10px);flex-direction:column;margin:0;padding:10px;border-radius:22px;background:rgba(6,14,52,.96);border:1px solid var(--line);box-shadow:0 20px 50px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.25s}
  .sdb-links.is-open{opacity:1;visibility:visible;transform:none}
  .sdb-links a{padding:13px 16px;font-size:16px}
  .sdb-hero{grid-template-columns:1fr;padding:48px 0 40px;min-height:0;gap:48px}
  .sdb-hero__media{order:-1}
  
  .sdb-hero__copy{text-align:left}
  .sdb-split,.sdb-contact{grid-template-columns:1fr;gap:28px}
  .sdb-form-card{position:static}
  .sdb-sec{padding-top:72px}
}
@media (max-width:560px){
  .sdb-shell{padding:0 16px}
  .sdb-brand__text{font-size:17px}
  .sdb-programs{grid-template-columns:1fr 1fr}
  .sdb-programs .sdb-card:last-child{grid-column:span 2}
  .sdb-features{grid-template-columns:1fr}.sdb-feat:nth-child(5){grid-column:auto}
  .sdb-steps{grid-template-columns:1fr}
  .sdb-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.sdb-stats div{padding:14px 10px}.sdb-stats strong{font-size:34px}
  .sdb-row{grid-template-columns:1fr}
  .sdb-actions .sdb-btn{flex:1 1 100%}
  .sdb-float--a{right:-4px}.sdb-float--b{left:-4px}
  .sdb-mapwrap{height:220px}
  .sdb-marquee span{font-size:20px}
}
@media (prefers-reduced-motion:reduce){
  .sdb-app *,.sdb-app *::before,.sdb-app *::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .sdb-js .sdb-rv,.sdb-w > span{opacity:1!important;transform:none!important;filter:none!important}
  .sdb-js .sdb-reveal-img{clip-path:none!important}
}

/* ---------- footer credits ---------- */
.sdb-credits{display:flex;flex-direction:column;gap:2px;text-align:right}
.sdb-credits a{color:var(--cyan);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.sdb-heart{display:inline-block;animation:sdb-beat 1.4s ease-in-out infinite}
@keyframes sdb-beat{20%{transform:scale(1.25)}40%{transform:scale(1)}}
@media (max-width:560px){.sdb-footer{flex-direction:column;align-items:center;text-align:center}.sdb-credits{text-align:center}}

/* ---------- contact modal ---------- */
.sdb-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px}
.sdb-modal[hidden]{display:none}
.sdb-modal__bg{position:absolute;inset:0;background:rgba(2,6,26,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:sdb-fade .25s}
.sdb-modal__box{position:relative;width:min(100%,400px);padding:30px 24px 24px;border-radius:26px;text-align:center;background:linear-gradient(160deg,rgba(18,36,112,.96),rgba(30,16,90,.96));border:1px solid var(--line);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 60px rgba(31,107,255,.3);animation:sdb-pop .35s cubic-bezier(.2,.9,.3,1.3)}
.sdb-modal__box h3{font-family:var(--display);font-style:italic;font-weight:900;font-size:34px;line-height:1}
.sdb-modal__box p{margin:8px 0 20px;color:var(--muted)}
.sdb-modal__box .sdb-btn + .sdb-btn{margin-top:12px}
.sdb-modal__x{position:absolute;right:12px;top:10px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.06);font-size:24px;line-height:1;color:#fff}
.sdb-btn--wa{background:linear-gradient(135deg,#1fb85a,#35e06f);color:#04210f;box-shadow:0 10px 30px rgba(53,224,111,.35)}
.sdb-btn--wa:hover{box-shadow:0 16px 40px rgba(53,224,111,.5)}
@keyframes sdb-fade{from{opacity:0}}
@keyframes sdb-pop{from{opacity:0;transform:scale(.88) translateY(14px)}}

/* ---------- headings always white ---------- */
.sdb-app h1,.sdb-app h2,.sdb-app h3,
.sdb-app .sdb-h1,.sdb-app .sdb-h2{color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important}

/* ---------- content protection ---------- */
.sdb-app[data-protect="1"],.sdb-app[data-protect="1"] *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.sdb-app input,.sdb-app textarea,.sdb-app select{-webkit-user-select:text!important;user-select:text!important}
.sdb-app img{-webkit-user-drag:none;user-drag:none}
.sdb-lock{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:24px;text-align:center;background:rgba(2,6,26,.96);color:#fff;font-weight:700}
.sdb-lock[hidden]{display:none}
@media print{body:has(.sdb-app[data-protect="1"]){display:none!important}}

.sdb-photo.is-broken{min-height:320px;display:grid;place-items:center}
.sdb-photo.is-broken::after{content:"SG";position:relative;z-index:1;font-family:var(--display);font-style:italic;font-weight:900;font-size:120px;color:#fff}
.sdb-photo.is-broken img{display:none}

/* ---------- back to top (bottom left, all devices) ---------- */
.sdb-top{
  position:fixed;left:16px;left:max(16px,env(safe-area-inset-left));bottom:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:150;
  --p:0;width:52px;height:52px;border-radius:50%;border:0;padding:0;display:grid;place-items:center;color:#fff;
  background:conic-gradient(var(--cyan) calc(var(--p)*1%),rgba(80,140,255,.25) 0);
  box-shadow:0 10px 30px rgba(0,0,0,.45),0 0 24px rgba(31,107,255,.45);
  opacity:0;visibility:hidden;transform:translateY(20px) scale(.8);
  transition:opacity .3s,transform .3s,visibility .3s,box-shadow .25s;
}
.sdb-top::before{content:"";position:absolute;inset:3px;border-radius:50%;background:linear-gradient(135deg,#0c1c66,#1a1070);z-index:0}
.sdb-top .sdb-ic{position:relative;z-index:1;width:22px;height:22px;transition:transform .25s}
.sdb-top.is-show{opacity:1;visibility:visible;transform:none}
.sdb-top:hover{box-shadow:0 14px 36px rgba(0,0,0,.5),0 0 34px rgba(25,211,255,.7)}
.sdb-top:hover .sdb-ic{transform:translateY(-3px)}
.sdb-top:active{transform:scale(.92)}
@media (max-width:560px){.sdb-top{width:46px;height:46px}}

/* ---------- form fields: consistent size, clear select text ---------- */
.sdb-form input,.sdb-form select,.sdb-form textarea{
  height:auto!important;min-height:52px;line-height:1.4!important;
  padding:13px 14px!important;color:#fff!important;font-size:16px!important;font-weight:500;
  -webkit-text-fill-color:#fff;opacity:1;
}
.sdb-form textarea{min-height:110px;line-height:1.5!important}
.sdb-form input::placeholder,.sdb-form textarea::placeholder{color:#8ea4dc;-webkit-text-fill-color:#8ea4dc;opacity:1}
.sdb-form select{
  -webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;
  padding-right:42px!important;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;
  background-color:rgba(4,10,36,.65)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2319d3ff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:18px!important;
}
.sdb-form select option{background:#081445;color:#fff;font-size:16px;padding:8px}

/* ---------- browser autofill: keep dark field + white text ---------- */
.sdb-form input:-webkit-autofill,
.sdb-form input:-webkit-autofill:hover,
.sdb-form input:-webkit-autofill:focus,
.sdb-form textarea:-webkit-autofill,
.sdb-form select:-webkit-autofill{
  -webkit-text-fill-color:#fff!important;caret-color:#fff;
  -webkit-box-shadow:0 0 0 1000px #0a1238 inset!important;box-shadow:0 0 0 1000px #0a1238 inset!important;
  border-color:var(--line)!important;transition:background-color 99999s ease-in-out 0s;
}
.sdb-form input:autofill{background:#0a1238!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.sdb-form input{background-color:rgba(4,10,36,.65)!important;color-scheme:dark}
