:root{--ink:#17324d;--muted:#66788a;--blue:#07518a;--orange:#ff7a18;--soft:#f4f9fb;--line:#dbe7ee;--shadow:0 24px 70px rgba(23,50,77,.14);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f7fbfc 0,#fff 42%);line-height:1.55}a{color:var(--blue);text-decoration:none}img{max-width:100%;display:block}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.8rem;z-index:20}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,5vw,72px);background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(219,231,238,.8)}.brand{display:flex;align-items:center;gap:.7rem;font-weight:850;color:var(--ink)}.brand img{width:46px;height:46px;border-radius:14px;object-fit:cover}.nav{display:flex;align-items:center;gap:1rem}.nav a,.nav button,.linklike{border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.menu-toggle{display:none;border:0;background:var(--soft);border-radius:14px;padding:.55rem .8rem}.flash{margin:1rem auto;max-width:1100px;padding:1rem 1.2rem;border-radius:18px}.flash.success{background:#eaf8ef}.flash.error{background:#fff1ec}.hero{min-height:78vh;display:grid;grid-template-columns:1.04fr .96fr;gap:4rem;align-items:center;padding:clamp(42px,7vw,86px) clamp(20px,6vw,86px);overflow:hidden}.hero-copy h1{font-size:clamp(2.4rem,6vw,5.8rem);line-height:.96;margin:.3rem 0 1rem;max-width:900px}.hero-copy p{font-size:1.18rem;color:var(--muted);max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:var(--orange);font-weight:800}.hero-art{position:relative}.hero-art:before{content:"";position:absolute;inset:8%;border-radius:48% 52% 46% 54%;background:radial-gradient(circle,#dff4ff,#fff0 68%);filter:blur(4px)}.hero-art img{position:relative;border-radius:42px;box-shadow:var(--shadow);transform:rotate(-2deg)}.hero-search,.filters,.wizard fieldset,.auth form,.panel{background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px rgba(23,50,77,.08);border-radius:var(--radius);padding:1rem}.hero-search{display:flex;gap:.8rem;margin:1.4rem 0;max-width:720px}.actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.72rem 1.05rem;border-radius:999px;border:1px solid transparent;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--orange),#ff9f3f);color:#fff;box-shadow:0 14px 36px rgba(255,122,24,.28)}.btn.ghost,.btn.small{background:#fff;color:var(--ink);border-color:var(--line)}.btn.small{min-height:36px;padding:.45rem .75rem;font-size:.9rem}.btn.danger{background:#fff1ec;color:#9a2c00;border-color:#ffd0bd}.band,.steps,.categories,.split,.cta,.page-hero,.cards,.dashboard-grid,.admin-grid,.text-page{max-width:1180px;margin:0 auto;padding:clamp(28px,5vw,64px) clamp(18px,4vw,24px)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem}.section-head h2,.split h2,.cta h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.05;margin:0 0 1rem}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;padding-top:1rem}.card,.dash-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(23,50,77,.08)}.card img{height:230px;width:100%;object-fit:cover}.card div,.dash-card div{padding:1rem}.status,.demo{display:inline-flex;padding:.25rem .6rem;border-radius:999px;background:#eaf6ff;color:#07518a;font-size:.78rem;font-weight:800;text-transform:capitalize}.demo{background:#fff3df;color:#9a4b00}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.steps article,.donation{background:linear-gradient(145deg,#fff,#f4fbff);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;box-shadow:0 18px 48px rgba(23,50,77,.08)}.steps span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--blue);color:#fff;font-weight:900}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.categories a{min-height:120px;display:grid;place-items:center;border-radius:30px;background:#102f4a;color:#fff;font-weight:900;font-size:1.3rem}.categories a:nth-child(2n){background:#ff7a18}.split{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.cta{text-align:center;background:linear-gradient(135deg,#092e4c,#0b5f91);color:#fff;border-radius:40px;margin-top:3rem;margin-bottom:3rem}.cta p{color:#dbeefa}.page-hero.compact{padding-bottom:1rem}.page-hero h1,.text-page h1{font-size:clamp(2.1rem,5vw,4.5rem);line-height:1;margin:.2rem 0}.filters{max-width:1180px;margin:0 auto 1rem;display:grid;grid-template-columns:2fr repeat(4,1fr);gap:.75rem}.filters input,.filters select,.wizard input,.wizard select,.wizard textarea,.auth input,.auth textarea,.panel input,.panel textarea,.panel select,.dashboard-grid select,.admin-grid input,.admin-grid select{width:100%;border:1px solid var(--line);border-radius:16px;padding:.85rem 1rem;font:inherit;background:#fff}.wizard{max-width:980px;margin:auto;padding:1rem}.wizard fieldset{border:1px solid var(--line);margin:1rem 0;display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.wizard legend{font-weight:900;font-size:1.2rem;padding:.4rem}.wizard textarea,.wizard label,.hint{grid-column:1/-1}.auth{min-height:62vh;display:grid;place-items:center;padding:2rem}.auth form{width:min(100%,520px);display:grid;gap:.8rem}.detail{max-width:1180px;margin:auto;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.main-photo{border-radius:34px;box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover}.gallery div{display:flex;gap:.6rem;margin-top:.7rem}.gallery div img{width:82px;height:82px;border-radius:16px;object-fit:cover}.detail-info dl{display:grid;grid-template-columns:150px 1fr;gap:.55rem;border-top:1px solid var(--line);padding-top:1rem}.detail-info dt{font-weight:900}.map{padding:1rem;border-radius:22px;background:#edf7fb}.share-panel{max-width:980px;margin:0 auto;padding:1.5rem}.insta-card{display:grid;grid-template-columns:220px 1fr;gap:1rem;align-items:center;margin:1rem 0;padding:1rem;border-radius:28px;background:#102f4a;color:#fff}.insta-card>img{height:220px;width:220px;object-fit:cover;border-radius:22px}.insta-card strong{font-size:2rem;color:#ff9f3f}.insta-card div img{width:92px}.share-panel textarea{width:100%;min-height:90px;border:1px solid var(--line);border-radius:18px;padding:1rem}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.dash-card{display:grid;grid-template-columns:190px 1fr}.dash-card>img{height:100%;width:100%;object-fit:cover}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.admin-grid form{display:grid;gap:.5rem;margin:.7rem 0;padding:.7rem;border-bottom:1px solid var(--line)}.text-page{max-width:880px}.text-page p{font-size:1.06rem;color:#394c5d}.footer{display:flex;justify-content:space-between;gap:2rem;padding:36px clamp(18px,6vw,86px);background:#102f4a;color:#fff}.footer a,.footer button{color:#fff}.footer nav{display:flex;gap:.9rem;flex-wrap:wrap}.cookie{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);width:min(720px,calc(100% - 24px));background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:1.2rem;z-index:30}.cookie-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}
@media (prefers-reduced-motion:no-preference){.card,.steps article,.btn{transition:transform .2s ease,box-shadow .2s ease}.card:hover,.steps article:hover,.btn:hover{transform:translateY(-2px)}}
@media (max-width:880px){.menu-toggle{display:block}.nav{display:none;position:absolute;right:16px;top:72px;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:22px;padding:1rem;box-shadow:var(--shadow)}.nav.open{display:flex}.hero,.split,.detail,.dashboard-grid,.admin-grid{grid-template-columns:1fr}.hero{min-height:auto;padding-top:34px}.cards,.steps,.categories{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.hero-search{flex-direction:column}.wizard fieldset{grid-template-columns:1fr}.detail-info dl{grid-template-columns:1fr}.dash-card{grid-template-columns:1fr}.footer{flex-direction:column}.cookie-grid{grid-template-columns:1fr}.insta-card{grid-template-columns:1fr}.insta-card>img{width:100%;height:auto}}

input[type=checkbox]{width:auto!important;min-width:18px;height:18px;accent-color:var(--orange)}
.section-head.inline{align-items:center}
.detail-info h1{font-size:clamp(2.2rem,4vw,4.2rem);line-height:1;margin:.6rem 0}
.share-panel{max-width:1080px;padding:clamp(24px,5vw,56px) 1.5rem}
.qr-explain{display:grid;grid-template-columns:1fr 150px;gap:1.4rem;align-items:center;background:#f4f9fb;border:1px solid var(--line);border-radius:28px;padding:1.3rem;margin:1rem 0 1.3rem}
.qr-explain h3{font-size:1.35rem;margin:0 0 .35rem}
.qr-explain p{margin:0;color:#4e6173}
.qr-explain img{width:132px;border-radius:18px;background:#fff;padding:.45rem}
.contact-panels{align-items:stretch}
.form-panel{display:grid;gap:.8rem;padding:1.35rem}
.form-panel h2{font-size:clamp(1.55rem,2vw,2.1rem);line-height:1.05;margin:0}
.form-panel p{margin:0 0 .35rem;color:var(--muted)}
.form-panel textarea{min-height:118px;resize:vertical}
.checkline{display:flex;align-items:flex-start;gap:.7rem;line-height:1.35}
.form-panel .btn{justify-self:start}
.tips-hero{max-width:1180px;margin:0 auto;padding:clamp(42px,7vw,86px) clamp(18px,4vw,24px);display:grid;grid-template-columns:1.35fr .65fr;gap:2rem;align-items:center}
.tips-hero h1{font-size:clamp(2.5rem,6vw,5rem);line-height:.96;margin:.25rem 0 1rem}
.tips-hero p{font-size:1.16rem;color:var(--muted);max-width:760px}
.tips-hero aside,.tips-checklist{background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);padding:1.4rem}
.tips-hero aside strong{font-size:1.15rem}
.tips-hero li{margin:.6rem 0}
.tips-layout{max-width:1180px;margin:0 auto;padding:0 clamp(18px,4vw,24px) clamp(38px,6vw,72px);display:grid;grid-template-columns:1fr 360px;gap:1.4rem;align-items:start}
.tips-content{display:grid;gap:1rem}
.tips-content article{display:grid;grid-template-columns:54px 1fr;gap:1rem;background:linear-gradient(145deg,#fff,#f6fbfd);border:1px solid var(--line);border-radius:28px;padding:1.2rem;box-shadow:0 14px 42px rgba(23,50,77,.07)}
.tips-content span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#102f4a;color:#fff;font-weight:900}
.tips-content h2,.tips-checklist h2{font-size:1.45rem;margin:0 0 .35rem}
.tips-content p{margin:0;color:#526577}
.tips-checklist{position:sticky;top:92px;display:grid;gap:.85rem}
.tips-checklist label{display:flex;gap:.65rem;align-items:flex-start;padding:.75rem;border-radius:16px;background:#f7fbfc}
.mini-cta{margin-top:.5rem;border-radius:22px;background:#102f4a;color:#fff;padding:1rem}
.mini-cta p{color:#dbeefa}
.flyer-sheet-wrap{max-width:960px;margin:0 auto 4rem;padding:0 1rem}
.flyer-sheet{background:#fff;border:1px solid var(--line);border-radius:34px;box-shadow:var(--shadow);padding:2rem;color:var(--ink)}
.flyer-sheet header{display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#102f4a,#0b5f91);color:#fff;border-radius:26px;padding:1rem}
.flyer-sheet header img{width:76px;height:76px;border-radius:18px;object-fit:cover}
.flyer-sheet header strong{display:block;font-size:1.25rem}
.flyer-sheet header span{color:#dbeefa}
.missing-label{font-size:clamp(3rem,8vw,6rem);font-weight:950;color:var(--orange);line-height:1;margin:1.5rem 0 0}
.flyer-sheet h2{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1;margin:0 0 1rem}
.flyer-main{display:grid;grid-template-columns:1.2fr .8fr;gap:1.2rem;align-items:stretch}
.flyer-photo{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:28px}
.flyer-main aside{display:grid;place-items:center;text-align:center;background:#f4f9fb;border:1px solid var(--line);border-radius:28px;padding:1rem}
.flyer-qr{width:min(260px,100%);background:#fff;border-radius:18px;padding:.45rem}
.flyer-sheet dl{display:grid;grid-template-columns:170px 1fr;gap:.6rem;margin:1.4rem 0;font-size:1.06rem}
.flyer-sheet dt{font-weight:900}.flyer-sheet dd{margin:0}.flyer-sheet footer{border-radius:999px;background:#102f4a;color:#fff;padding:1rem 1.4rem;font-weight:800;text-align:center}
@media print{.topbar,.footer,.cookie,.flyer-intro{display:none!important}body{background:#fff}.flyer-sheet-wrap{max-width:none;margin:0;padding:0}.flyer-sheet{box-shadow:none;border:0;border-radius:0}}
@media (max-width:880px){.section-head.inline,.qr-explain,.tips-hero,.tips-layout,.flyer-main{grid-template-columns:1fr}.tips-checklist{position:static}.qr-explain img{width:112px}.flyer-sheet dl{grid-template-columns:1fr}}

.contact-panels{
  max-width:1080px;
  padding-top:clamp(18px,3vw,34px);
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
}
.contact-panels .panel{
  border-radius:24px;
  border-color:#d8e7ef;
  box-shadow:0 18px 48px rgba(23,50,77,.07);
}
.form-panel{
  gap:.72rem;
  padding:clamp(1rem,2.2vw,1.45rem);
}
.form-panel h2{
  font-size:clamp(1.55rem,2.4vw,2.35rem)!important;
  letter-spacing:0;
  margin:0;
}
.form-panel p{
  max-width:58ch;
  font-size:.98rem;
}
.form-panel input:not([type=hidden]):not([type=checkbox]),
.form-panel textarea{
  border-radius:14px;
  border-color:#d6e5ed;
  padding:.78rem .9rem;
  background:#fbfdfe;
}
.form-panel textarea{
  min-height:104px;
}
.checkline{
  width:auto!important;
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr);
  align-items:start;
  gap:.65rem;
  margin:.2rem 0 .1rem;
  font-size:.96rem;
  color:#223c55;
}
.checkline input[type=checkbox]{
  width:18px!important;
  min-width:18px!important;
  height:18px;
  margin:.16rem 0 0;
}
.form-panel .btn{
  min-height:42px;
  padding:.64rem 1rem;
}
.report-panel{
  background:linear-gradient(145deg,#fff,#f8fbfd);
}
@media (max-width:880px){
  .contact-panels{grid-template-columns:1fr}
}

.hero-search{
  align-items:center;
  padding:.55rem;
  gap:.55rem;
}
.hero-search input{
  flex:1;
  min-width:0;
  width:100%;
  border:0;
  background:transparent;
  padding:1rem 1.05rem;
  font:inherit;
  color:var(--ink);
  outline:none;
}
.hero-search input::placeholder{
  color:#6a7b8a;
}
.hero-search input:focus{
  box-shadow:inset 0 0 0 2px rgba(255,122,24,.28);
  border-radius:999px;
  background:#fff;
}
.hero-search .btn{
  flex:0 0 auto;
  min-width:112px;
}
@media (max-width:880px){
  .hero-search{padding:.7rem;align-items:stretch}
  .hero-search input{background:#fff;border-radius:18px}
  .hero-search .btn{width:100%}
}

.tips-hero.pro{
  position:relative;
  overflow:hidden;
  padding-top:clamp(54px,7vw,92px);
}
.tips-hero.pro:before{
  content:"";
  position:absolute;
  inset:auto 8% 4% auto;
  width:360px;
  height:360px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,122,24,.16),rgba(255,255,255,0) 70%);
  pointer-events:none;
}
.tips-hero.pro h1{
  max-width:840px;
}
.tips-emergency{
  position:relative;
  background:linear-gradient(145deg,#102f4a,#0b5f91)!important;
  color:#fff;
  border:0!important;
}
.tips-emergency span{
  display:inline-flex;
  margin-bottom:.8rem;
  padding:.3rem .7rem;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:.82rem;
  font-weight:900;
  text-transform:uppercase;
}
.tips-emergency strong{
  display:block;
  font-size:clamp(1.4rem,2.4vw,2.05rem);
  line-height:1.05;
}
.tips-emergency p{
  color:#dbeefa;
  font-size:1rem;
}
.quick-actions{
  max-width:1180px;
  margin:0 auto;
  padding:0 clamp(18px,4vw,24px) clamp(24px,4vw,46px);
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
}
.quick-actions article{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:.85rem;
  align-items:start;
  min-height:132px;
  padding:1rem;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 38px rgba(23,50,77,.07);
}
.quick-actions span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:#fff3df;
  color:#9a4b00;
  font-weight:950;
}
.quick-actions p{
  margin:0;
  color:#334b63;
  font-weight:700;
}
.tips-layout.pro{
  grid-template-columns:minmax(0,1fr) 390px;
}
.guide-label{
  display:inline-flex;
  width:max-content;
  margin-bottom:.2rem;
  padding:.32rem .72rem;
  border-radius:999px;
  background:#eaf6ff;
  color:#07518a;
  font-size:.82rem;
  font-weight:900;
  text-transform:uppercase;
}
.timeline-block,.mistake-grid{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:1.25rem;
  box-shadow:0 14px 42px rgba(23,50,77,.07);
}
.timeline-block h2,.mistake-grid h2{
  margin:0 0 1rem;
  font-size:clamp(1.55rem,2.4vw,2.15rem);
}
.timeline-block>div{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:.8rem;
}
.timeline-block article{
  padding:1rem;
  border-radius:22px;
  background:#f6fbfd;
}
.timeline-block strong{
  display:block;
  margin-bottom:.35rem;
  color:#102f4a;
}
.timeline-block p{
  margin:0;
  color:#526577;
}
.mistake-grid>div{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:.8rem;
}
.mistake-grid p{
  margin:0;
  padding:1rem 1rem 1rem 2.65rem;
  border-radius:18px;
  background:#fff7f2;
  color:#57321d;
  position:relative;
}
.mistake-grid p:before{
  content:"!";
  position:absolute;
  left:1rem;
  top:1rem;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#ff7a18;
  color:#fff;
  font-weight:950;
}
.tips-checklist.pro{
  gap:.72rem;
}
.qr-side{
  margin-top:.4rem;
  padding:1rem;
  border-radius:22px;
  background:linear-gradient(145deg,#f4f9fb,#fff);
  border:1px solid var(--line);
}
.qr-side img{
  width:70px;
  height:70px;
  border-radius:18px;
  object-fit:cover;
  margin-bottom:.75rem;
}
.qr-side strong{
  display:block;
  font-size:1.1rem;
}
.qr-side p{
  margin:.35rem 0 0;
  color:#526577;
}
.tips-flyer-band{
  max-width:1180px;
  margin:0 auto clamp(32px,5vw,62px);
  padding:clamp(24px,4vw,42px);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem;
  border-radius:34px;
  background:linear-gradient(135deg,#102f4a,#0b5f91);
  color:#fff;
}
.tips-flyer-band h2{
  margin:.2rem 0 .6rem;
  font-size:clamp(1.8rem,3vw,3.1rem);
  line-height:1;
}
.tips-flyer-band p{
  max-width:720px;
  margin:0;
  color:#dbeefa;
}
@media (max-width:980px){
  .quick-actions,.timeline-block>div,.mistake-grid>div{grid-template-columns:1fr 1fr}
  .tips-layout.pro{grid-template-columns:1fr}
  .tips-flyer-band{align-items:flex-start;flex-direction:column}
}
@media (max-width:640px){
  .quick-actions,.timeline-block>div,.mistake-grid>div{grid-template-columns:1fr}
}

.place-start{
  max-width:1120px;
  margin:0 auto;
  padding:clamp(42px,7vw,92px) clamp(18px,4vw,24px);
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:2rem;
  align-items:center;
}
.place-start h1{
  font-size:clamp(2.4rem,5vw,4.8rem);
  line-height:1;
  margin:.25rem 0 1rem;
}
.place-start-copy p:not(.eyebrow){
  color:var(--muted);
  font-size:1.16rem;
}
.place-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.place-options article{
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  padding:1.35rem;
  border:1px solid var(--line);
  border-radius:28px;
  background:#fff;
  box-shadow:var(--shadow);
}
.place-options h2{
  font-size:1.55rem;
  line-height:1.08;
  margin:0;
}
.place-options p{
  color:#526577;
}
@media (max-width:880px){
  .place-start,.place-options{grid-template-columns:1fr}
}

.nav .nav-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:.55rem .95rem;
  border-radius:999px;
  font-weight:850;
  line-height:1;
}
.nav .nav-place{
  color:#fff;
  background:#102f4a;
  box-shadow:0 12px 28px rgba(16,47,74,.18);
}
.nav .nav-register{
  color:var(--ink);
  background:#fff;
  border:1px solid var(--line);
  box-shadow:none;
}
.nav .nav-login{
  color:#fff;
  background:linear-gradient(135deg,var(--orange),#ff9f3f);
  border:1px solid transparent;
  box-shadow:0 12px 28px rgba(255,122,24,.24);
}
.nav .nav-register:hover{
  border-color:#b7cedd;
  background:#f7fbfc;
}

.flyer-contact{
  align-content:center;
  gap:.45rem;
  text-align:left!important;
}
.flyer-contact strong{
  display:block;
  font-size:clamp(1.35rem,2.6vw,2rem);
  line-height:1.05;
  color:var(--ink);
}
.flyer-contact p{
  width:100%;
  margin:.2rem 0;
  color:#233d55;
  overflow-wrap:anywhere;
}
.flyer-phone{
  display:inline-flex;
  width:auto!important;
  padding:.75rem .95rem;
  border-radius:18px;
  background:#fff3df;
  color:#9a4b00!important;
  font-size:1.18rem;
  font-weight:950;
}
.flyer-url{
  margin-top:.8rem!important;
  font-size:.9rem;
  color:#607080!important;
}
.share-actions,.flyer-actions{
  margin-top:1rem;
}
.share-actions .btn.small{
  min-width:104px;
}
.flyer-actions{
  padding-top:.6rem;
  border-top:1px solid var(--line);
}
@media (max-width:760px){
  .share-actions .btn.small,
  .flyer-actions .btn{
    flex:1 1 100%;
    width:100%;
  }
}

.about-hero{
  max-width:1180px;
  margin:0 auto;
  padding:clamp(46px,7vw,92px) clamp(18px,4vw,24px);
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:2rem;
  align-items:center;
}
.about-hero h1{
  font-size:clamp(2.7rem,6vw,5.6rem);
  line-height:.96;
  margin:.25rem 0 1rem;
}
.about-hero p{
  max-width:760px;
  color:var(--muted);
  font-size:1.15rem;
}
.about-hero aside{
  min-height:360px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:.8rem;
  padding:1.5rem;
  border-radius:34px;
  background:linear-gradient(145deg,#102f4a,#0b5f91);
  color:#fff;
  box-shadow:var(--shadow);
}
.about-hero aside img{
  width:150px;
  height:150px;
  border-radius:32px;
  object-fit:cover;
  background:#fff;
}
.about-hero aside strong{
  font-size:2rem;
  line-height:1;
}
.about-hero aside span{
  color:#dbeefa;
}
.about-cards{
  max-width:1180px;
  margin:0 auto;
  padding:0 clamp(18px,4vw,24px) clamp(34px,5vw,64px);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1rem;
}
.about-cards article{
  padding:1.35rem;
  border:1px solid var(--line);
  border-radius:28px;
  background:#fff;
  box-shadow:0 14px 42px rgba(23,50,77,.07);
}
.about-cards span{
  display:inline-flex;
  margin-bottom:1rem;
  padding:.3rem .7rem;
  border-radius:999px;
  background:#fff3df;
  color:#9a4b00;
  font-weight:950;
}
.about-cards h2{
  font-size:1.55rem;
  line-height:1.05;
  margin:.2rem 0 .7rem;
}
.about-cards p{
  color:#526577;
}
.about-split,.about-webgeek{
  max-width:1180px;
  margin:0 auto;
  padding:clamp(28px,5vw,64px) clamp(18px,4vw,24px);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1.5rem;
  align-items:start;
}
.about-split h2,.about-webgeek h2{
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:1;
  margin:.2rem 0 1rem;
}
.about-split p,.about-webgeek p{
  color:#526577;
}
.about-donation{
  margin:0;
}
.about-webgeek{
  border-radius:34px;
  background:#f4f9fb;
}
.about-webgeek ul{
  display:grid;
  gap:.75rem;
  margin:0;
  padding:0;
  list-style:none;
}
.about-webgeek li{
  padding:1rem 1rem 1rem 3rem;
  border-radius:18px;
  background:#fff;
  position:relative;
  font-weight:850;
}
.about-webgeek li:before{
  content:"✓";
  position:absolute;
  left:1rem;
  top:1rem;
  color:var(--orange);
  font-weight:950;
}
@media (max-width:880px){
  .about-hero,.about-cards,.about-split,.about-webgeek{
    grid-template-columns:1fr;
  }
  .about-hero{
    padding-top:34px;
  }
  .about-hero h1{
    font-size:clamp(2.15rem,11vw,3.7rem);
  }
  .about-hero aside{
    min-height:auto;
    border-radius:26px;
  }
}

.admin-hero{
  max-width:1180px;
  margin:0 auto;
  padding:clamp(34px,6vw,72px) clamp(18px,4vw,24px) clamp(18px,3vw,32px);
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
}
.admin-hero h1{
  font-size:clamp(2.4rem,5vw,4.6rem);
  line-height:1;
  margin:.25rem 0 .7rem;
}
.admin-hero p{
  color:var(--muted);
  max-width:720px;
}
.admin-stats{
  max-width:1180px;
  margin:0 auto;
  padding:0 clamp(18px,4vw,24px) clamp(24px,4vw,42px);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1rem;
}
.admin-stats article{
  padding:1.15rem;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 42px rgba(23,50,77,.07);
}
.admin-stats span{
  color:var(--muted);
  font-weight:800;
}
.admin-stats strong{
  display:block;
  margin:.25rem 0;
  font-size:2.4rem;
  line-height:1;
  color:var(--ink);
}
.admin-stats p{
  margin:0;
  color:#607080;
}
.admin-layout{
  max-width:1180px;
  margin:0 auto;
  padding:0 clamp(18px,4vw,24px) 1rem;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.admin-layout .panel{
  overflow:auto;
}
.admin-table{
  width:100%;
  border-collapse:collapse;
  min-width:520px;
}
.admin-table th,.admin-table td{
  padding:.7rem .55rem;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:top;
}
.admin-table th{
  color:#607080;
  font-size:.85rem;
}
.admin-note{
  max-width:1180px;
  margin:0 auto 3rem;
  padding:0 clamp(18px,4vw,24px);
  color:var(--muted);
}
@media (max-width:900px){
  .admin-hero{
    align-items:flex-start;
    flex-direction:column;
  }
  .admin-stats{
    grid-template-columns:1fr 1fr;
  }
  .admin-layout{
    grid-template-columns:1fr;
  }
}
@media (max-width:560px){
  .admin-stats{
    grid-template-columns:1fr;
  }
}

html,body{
  max-width:100%;
  overflow-x:hidden;
}

input,select,textarea,button{
  font-size:16px;
}

@media (max-width:1020px){
  .topbar{
    padding:12px 18px;
  }
  .brand span{
    font-size:1rem;
  }
  .nav{
    gap:.55rem;
  }
  .nav a:not(.nav-btn){
    font-size:.95rem;
  }
  .nav .nav-btn{
    padding:.52rem .78rem;
  }
}

@media (max-width:760px){
  body{
    background:#fff;
  }
  .topbar{
    min-height:66px;
    align-items:center;
  }
  .brand{
    min-width:0;
    max-width:calc(100% - 58px);
  }
  .brand img{
    width:42px;
    height:42px;
    flex:0 0 auto;
  }
  .brand span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .menu-toggle{
    display:grid!important;
    place-items:center;
    width:44px;
    height:44px;
    padding:0;
    font-size:1.25rem;
    color:var(--ink);
  }
  .nav{
    display:none;
    position:absolute;
    left:12px;
    right:12px;
    top:74px;
    width:auto;
    flex-direction:column;
    align-items:stretch;
    gap:.45rem;
    padding:.8rem;
    border:1px solid var(--line);
    border-radius:22px;
    background:rgba(255,255,255,.98);
    box-shadow:0 22px 60px rgba(23,50,77,.18);
    z-index:30;
  }
  .nav.open{
    display:flex;
  }
  .nav a,
  .nav button,
  .nav form{
    width:100%;
  }
  .nav a,
  .nav button{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
  }
  .nav a:not(.nav-btn){
    background:#f6fbfd;
  }
  .nav .nav-btn{
    border-radius:16px;
  }
  .hero{
    min-height:auto;
    grid-template-columns:1fr;
    gap:1.4rem;
    padding:30px 18px 44px;
  }
  .hero-copy h1{
    font-size:clamp(2.15rem,12vw,3.6rem);
    line-height:1;
  }
  .hero-copy p{
    font-size:1rem;
  }
  .hero-art img{
    border-radius:26px;
    transform:none;
  }
  .hero-search{
    max-width:none;
    width:100%;
    flex-direction:column;
    padding:.65rem;
    border-radius:24px;
  }
  .hero-search input{
    min-height:48px;
    width:100%;
    border-radius:18px;
    background:#fff;
  }
  .hero-search .btn{
    width:100%;
    min-height:48px;
  }
  .actions{
    width:100%;
  }
  .actions .btn{
    flex:1 1 100%;
    width:100%;
  }
  .band,.steps,.categories,.split,.cta,.page-hero,.cards,.dashboard-grid,.admin-grid,.text-page{
    padding-left:16px;
    padding-right:16px;
  }
  .section-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .cards{
    grid-template-columns:1fr;
    gap:1rem;
  }
  .card{
    border-radius:22px;
  }
  .card img{
    height:auto;
    aspect-ratio:4/3;
  }
  .card div{
    padding:1rem;
  }
  .filters{
    width:calc(100% - 32px);
    grid-template-columns:1fr;
    padding:.8rem;
    border-radius:24px;
  }
  .filters input,.filters select,.filters button{
    min-height:48px;
  }
  .page-hero h1,.text-page h1{
    font-size:clamp(2rem,11vw,3.2rem);
  }
  .wizard{
    padding:0 16px 32px;
  }
  .wizard fieldset{
    grid-template-columns:1fr;
    padding:1rem;
    border-radius:22px;
  }
  .wizard input,.wizard select,.wizard textarea{
    min-height:48px;
  }
  .wizard textarea{
    min-height:120px;
  }
  .auth{
    min-height:auto;
    padding:28px 16px 44px;
  }
  .auth form{
    border-radius:24px;
    padding:1rem;
  }
  .auth h1{
    font-size:2rem;
    margin:.2rem 0 .8rem;
  }
  .detail{
    grid-template-columns:1fr;
    padding:18px 16px 28px;
    gap:1rem;
  }
  .main-photo{
    border-radius:24px;
    aspect-ratio:4/3;
  }
  .detail-info h1{
    font-size:clamp(2rem,11vw,3.2rem);
  }
  .detail-info dl{
    grid-template-columns:1fr;
    gap:.25rem;
  }
  .detail-info dd{
    margin:0 0 .65rem;
  }
  .share-panel{
    padding:22px 16px;
  }
  .dashboard-grid{
    grid-template-columns:1fr;
  }
  .dash-card{
    grid-template-columns:1fr;
    border-radius:22px;
  }
  .dash-card>img{
    aspect-ratio:4/3;
    height:auto;
  }
  .dash-card .btn,
  .dash-card form,
  .dash-card button{
    width:100%;
  }
  .place-start{
    grid-template-columns:1fr;
    padding:32px 16px 44px;
    gap:1rem;
  }
  .place-start h1{
    font-size:clamp(2.1rem,11vw,3.4rem);
  }
  .place-options{
    grid-template-columns:1fr;
  }
  .place-options article{
    min-height:auto;
    border-radius:22px;
  }
  .tips-hero{
    grid-template-columns:1fr;
    padding:34px 16px 24px;
  }
  .tips-hero h1{
    font-size:clamp(2.1rem,11vw,3.4rem);
  }
  .quick-actions{
    grid-template-columns:1fr;
    padding-left:16px;
    padding-right:16px;
  }
  .quick-actions article{
    min-height:auto;
  }
  .tips-flyer-band{
    margin-left:16px;
    margin-right:16px;
    border-radius:24px;
    flex-direction:column;
    align-items:flex-start;
  }
  .flyer-sheet-wrap{
    padding:0 12px 32px;
  }
  .flyer-sheet{
    padding:1rem;
    border-radius:24px;
  }
  .flyer-sheet header{
    border-radius:20px;
  }
  .flyer-main{
    grid-template-columns:1fr;
  }
  .flyer-sheet dl{
    grid-template-columns:1fr;
  }
  .flyer-sheet dd{
    margin:0 0 .55rem;
  }
  .footer{
    padding:28px 18px;
  }
  .footer nav{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media (max-width:380px){
  .brand span{
    max-width:190px;
  }
  .btn{
    padding-left:.85rem;
    padding-right:.85rem;
  }
  .hero-copy h1,.detail-info h1,.page-hero h1{
    word-break:normal;
    overflow-wrap:break-word;
  }
}
