/* Events is a public route in the existing app, with the same official assets. */
.events-welcome-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:16px;color:var(--blue);font-size:.88rem;text-decoration:underline;text-underline-offset:4px}
.events-home-card{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:32px;align-items:center;margin-top:28px;padding:30px 34px;border:1px solid #dce6f7;border-radius:28px;background:#fff7ec;overflow:hidden}
.events-home-card .eyebrow{margin:0 0 10px;color:var(--blue);font-size:.68rem;letter-spacing:.12em}
.events-home-card h2{margin:0 0 12px;color:var(--blue);font-family:"Titan One",sans-serif;font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.1}
.events-home-description{max-width:560px;margin:0;color:#53617b;font-size:1rem;line-height:1.5}
.events-home-price{margin:16px 0;font-weight:700;color:var(--blue)}
.events-home-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;background:var(--blue);color:#fff;box-shadow:0 4px 0 #18365c}
.events-home-art{margin:0;overflow:hidden;border-radius:24px;background:#f3f6fc}
.events-home-art img{display:block;width:100%;height:246px;object-fit:cover;object-position:center 35%}
.events-page{background:#fff;overflow-wrap:break-word}
.events-page :is(a,button,input):focus-visible{outline:3px solid var(--pink);outline-offset:4px}
.events-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1140px;margin:auto;padding:18px 32px;border-bottom:1px solid #e3eaf7}
.events-topbar img{display:block;width:106px;height:50px;object-fit:contain}
.events-back{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;color:var(--blue);font-weight:700;font-size:.9rem;text-decoration:none}
.events-content{width:min(100%,1140px);margin:auto;padding:32px 32px 44px}
.events-intro{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 100px;align-items:center;gap:24px;margin-bottom:28px;padding:24px 28px;border-radius:24px;background:linear-gradient(115deg,#fff7ec,#fff 78%);border-bottom:3px solid #f5d5e3}
.events-intro-seal{display:block;width:100px;height:100px;object-fit:contain;transform:rotate(7deg)}
.events-intro .eyebrow{font-size:.66rem;letter-spacing:.13em;margin:0 0 12px}
.events-intro h1{font-family:"Titan One",sans-serif;font-size:clamp(2.15rem,4vw,3.1rem);line-height:1.12;margin:0 0 15px;color:var(--blue)}
.events-intro .events-lead{margin:0 0 7px;font-weight:700;font-size:1.28rem;color:var(--ink)}
.events-intro-copy>p:last-child{margin:0;color:#53617b;max-width:590px}
.event-packages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.event-package{display:flex;flex-direction:column;min-width:0;padding:27px;border:1px solid #d4e2f8;border-radius:26px;background:#fff;box-shadow:0 8px 28px rgba(30,91,215,.055)}
.event-package[data-event-package="gulalover"]{border-top:4px solid var(--pink);padding-top:24px}
.event-package-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.event-package-heading h2{margin:0;color:var(--blue);font-family:"Titan One",sans-serif;font-size:1.8rem;line-height:1.2}
.event-package-heading>span{padding:6px 10px;border-radius:999px;background:#edf4ff;color:var(--blue);font-size:.8rem;font-weight:700}
.event-package-quantity{display:flex;align-items:center;gap:13px;margin:25px 0 22px}
.event-package-quantity strong{font-weight:700;line-height:1;font-size:3.1rem;color:var(--blue);letter-spacing:-.04em}
.event-package-quantity span{font-size:1.04rem;line-height:1.3;color:var(--ink)}
.event-package-price{display:grid;gap:2px;padding-bottom:20px;border-bottom:1px solid #e5ebf5}
.event-package-price>span{color:#53617b;font-size:.82rem}
.event-package-price output{font-weight:700;font-size:2rem;line-height:1.25;letter-spacing:-.02em;color:var(--blue)}
.event-package-includes{padding:0;margin:20px 0;list-style:none;color:#3e4e68;font-size:.97rem;line-height:1.45}
.event-package-includes li{position:relative;padding-left:21px;margin-bottom:10px}
.event-package-includes li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;background:var(--pink)}
.event-package-extra{padding:16px;border:1px solid #f4d1e0;border-radius:16px;background:#fff7fa;margin-bottom:23px}
.event-package-extra label{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer;font-size:.94rem;font-weight:700;line-height:1.35;color:var(--blue)}
.event-package-extra input{flex:0 0 22px;width:22px;height:22px;margin:0;accent-color:var(--blue);cursor:pointer}
.event-package-extra p{margin:6px 0 0 34px;color:#53617b;font-size:.83rem;line-height:1.45}
.event-package-action{margin-top:auto}
.events-consult{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:52px;padding:14px 16px;border-radius:15px;font-size:.95rem;line-height:1.35;white-space:normal;text-align:left;text-decoration:none;box-shadow:0 4px 0 #18365c}
.events-consult[aria-disabled="true"]{background:#edf3fd;color:#596b87;box-shadow:none;cursor:not-allowed;pointer-events:none}
.events-contact-note{margin:19px auto 0;max-width:690px;color:#53617b;text-align:center;font-size:.87rem;line-height:1.5}
.events-personalize{display:flex;gap:20px;align-items:center;margin-top:45px;padding:26px;border-radius:23px;background:#fff7ec}
.events-label-mark{flex:0 0 72px;display:grid;place-items:center;width:72px;height:72px;border:1px dashed #98b4ec;border-radius:18px;background:#fff;transform:rotate(-5deg)}
.events-label-mark img{display:block;width:46px;height:46px;object-fit:contain}
.events-personalize h2{font-family:"Titan One",sans-serif;font-size:1.45rem;color:var(--blue);margin:0 0 8px;line-height:1.25}
.events-personalize p{margin:0;color:#53617b;font-size:.96rem}
.events-gallery-section{margin-top:44px;padding:26px;border:1px solid #e1e9f8;border-radius:26px;background:linear-gradient(160deg,#f5f8ff,#fff 65%)}
.events-section-heading .eyebrow{margin:0 0 10px;font-size:.66rem;letter-spacing:.13em;color:var(--blue)}
.events-section-heading h2,.events-terms>h2{font-size:1.7rem;color:var(--blue);margin:0 0 7px;line-height:1.25}
.events-section-heading p{margin:0 0 23px;color:#53617b;font-size:.95rem}
.events-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start}
.events-gallery button{display:grid;grid-template-rows:200px 44px;width:100%;max-width:226px;margin:0;padding:0;border:1px solid #d4e2f8;border-radius:18px;background:#fff7ec;cursor:zoom-in;overflow:hidden;color:var(--blue)}
.events-gallery img{display:block;width:100%;height:100%;padding:10px;object-fit:contain}
.events-photo-open{display:flex;align-items:center;justify-content:center;gap:8px;background:#fff;border-top:1px solid #e1e9f8;font-size:.88rem;font-weight:700}
.events-photo-open>span{font-size:1.2rem;color:var(--pink)}
.events-gallery button:hover{border-color:var(--blue);box-shadow:0 5px 18px #1e5bd712}
.events-photo-note{max-width:760px;margin:18px 0 0;color:#53617b;font-size:.86rem;line-height:1.5}
.events-terms{display:grid;grid-template-columns:1fr 1fr;gap:22px 32px;margin-top:44px;padding:28px;border:1px solid #dce6f7;border-top:4px solid var(--blue);border-radius:24px;background:#fff}
.events-terms>h2{grid-column:1/-1;margin:0}
.events-terms h3{margin:0 0 8px;color:var(--ink);font-size:1.03rem}
.events-terms p{margin:0;font-size:.94rem;color:#53617b;line-height:1.55}
.events-contact{padding:34px 0 0;text-align:center;max-width:610px;margin:auto}
.events-contact h2{font-family:"Titan One",sans-serif;font-size:1.55rem;line-height:1.2;color:var(--blue);margin:0 0 12px}
.events-contact p{font-size:.94rem;color:#53617b;margin:0 0 12px;line-height:1.5}
.events-contact-signature{display:block;object-fit:contain;width:150px;height:74px;margin:0 auto 20px}
.events-page.events-gallery-open{overflow:hidden}
.events-gallery-dialog{width:min(940px,calc(100% - 24px));height:min(800px,calc(100dvh - 24px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:0;border:1px solid #dce6f7;border-radius:24px;background:#fff;overflow:hidden;color:var(--ink);box-shadow:0 20px 80px #10224255}
.events-gallery-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto}
.events-gallery-dialog::backdrop{background:rgba(16,34,66,.85)}
.events-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid #e1e9f8}
.events-viewer-header>img{display:block;width:88px;height:42px;object-fit:contain}
.events-viewer-header>p{margin:0;font-size:.9rem;font-weight:700;color:var(--blue)}
.events-gallery-dialog button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px;padding:4px 10px;border:1px solid #cbdaf5;border-radius:12px;background:#fff;color:var(--blue);font-size:1.3rem;line-height:1;cursor:pointer}
.events-gallery-dialog button:hover:not(:disabled){background:#edf4ff;border-color:var(--blue)}
.events-gallery-dialog button:disabled{opacity:.38;cursor:default}
.events-gallery-dialog .events-gallery-close{border-radius:50%;font-size:1.7rem}
.events-photo-viewport{min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;background:#fff7ec;scroll-behavior:auto}
.events-photo-canvas{display:grid;place-items:center;padding:12px;min-width:100%;min-height:100%}
.events-photo-canvas img{display:block;max-width:none;max-height:none;object-fit:contain;border-radius:12px}
.events-viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px 8px;border-top:1px solid #e1e9f8}
.events-viewer-zoom{display:flex;align-items:center;gap:7px}
.events-gallery-dialog [data-events-zoom-reset]{font-size:.86rem;font-weight:700}
.events-viewer-caption{font-size:.94rem;line-height:1.4;text-align:center;font-weight:700;margin:0;padding:4px 18px;color:var(--blue)}
.events-viewer-note{font-size:.8rem;line-height:1.4;text-align:center;margin:0;padding:4px 18px 14px;color:#53617b}
@media(max-width:700px){
  .events-home-card{grid-template-columns:minmax(0,1fr) 108px;gap:16px;padding:22px;border-radius:24px}
  .events-home-copy{display:contents}
  .events-home-card .eyebrow{grid-column:1;grid-row:1;align-self:end;margin:0;font-size:.62rem}
  .events-home-card h2{grid-column:1;grid-row:2;align-self:start;margin:0;font-size:1.75rem}
  .events-home-art{grid-column:2;grid-row:1/3;border-radius:18px}
  .events-home-art img{height:145px}
  .events-home-description,.events-home-price,.events-home-link{grid-column:1/-1;margin:0}
  .events-home-description{font-size:.94rem}
  .events-home-link{justify-content:space-between}
  .events-topbar{padding:12px 20px;gap:12px}
  .events-topbar img{width:90px;height:44px}
  .events-back{font-size:.85rem}
  .events-content{padding:26px 20px 30px}
  .events-intro{display:block;margin-bottom:24px;padding:20px}
  .events-intro .eyebrow{padding-right:46px;min-height:24px;margin-bottom:12px}
  .events-intro-seal{position:absolute;width:46px;height:46px;top:12px;right:15px}
  .events-intro h1{font-size:2.25rem;margin-bottom:13px}
  .events-intro .events-lead{font-size:1.18rem}
  .events-intro-copy>p:last-child{font-size:.96rem}
  .event-packages{grid-template-columns:1fr;gap:22px}
  .event-package{padding:23px;border-radius:24px}
  .event-package[data-event-package="gulalover"]{padding-top:20px}
  .event-package-heading h2{font-size:1.65rem}
  .event-package-quantity{margin:21px 0}
  .event-package-quantity strong{font-size:2.85rem}
  .event-package-price output{font-size:1.9rem}
  .events-personalize{gap:15px;padding:22px;margin-top:34px;align-items:flex-start}
  .events-label-mark{flex-basis:50px;width:50px;height:56px;border-radius:12px}
  .events-label-mark img{width:34px;height:34px}
  .events-personalize h2{font-size:1.28rem}
  .events-personalize p{font-size:.92rem}
  .events-gallery-section,.events-terms{margin-top:34px}
  .events-gallery-section{padding:20px}
  .events-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .events-gallery button{border-radius:15px;grid-template-rows:160px 44px}
  .events-terms{grid-template-columns:1fr;padding:23px;gap:20px}
  .events-viewer-header{padding:9px 12px}
  .events-viewer-controls{padding:9px 10px 6px;gap:6px}
  .events-viewer-zoom{gap:4px}
  .events-viewer-caption{font-size:.88rem;padding-inline:12px}
  .events-viewer-note{padding-inline:12px}
}
@media(max-height:480px){.events-gallery-dialog{width:calc(100% - 16px);height:calc(100dvh - 16px);border-radius:18px}.events-viewer-header{padding:4px 12px}.events-viewer-header>img{width:70px;height:34px}.events-viewer-controls{padding-block:4px}.events-viewer-caption{font-size:.8rem;padding-block:2px}.events-viewer-note{font-size:.72rem;padding-block:2px 5px}}
@media(max-width:370px){.events-content{padding-inline:16px}.event-package{padding:20px}.event-package[data-event-package="gulalover"]{padding-top:17px}.event-package-heading{gap:9px}.event-package-extra{padding:13px}.events-home-card{padding:19px;grid-template-columns:minmax(0,1fr) 96px}.events-home-card h2{font-size:1.6rem}.events-home-art img{height:137px}}
@media(prefers-reduced-motion:reduce){.events-page,.events-page *,.events-home-card *{scroll-behavior:auto;animation:none!important;transition:none!important}}
