/* Luminous royal identity, with readable glass surfaces at every viewport. */
:root{--ink:#20364b;--muted:#354c61;--gold:#8b601f;--line:#b9974d60;--glass:linear-gradient(130deg,#fffefaed,#f3f8ffd6);--shadow:0 24px 65px #43547720,0 0 35px #e9cf8b20}
body{font-size:17px;line-height:1.85;background:#e9eff8;isolation:isolate}
body:before{background:linear-gradient(115deg,#eef5f8c9,#fff7eac4),url('/assets/skarb/orkiestra.png') center 38%/cover no-repeat;z-index:-2}
body:after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 12% 18%,#fff 0 1.5px,transparent 3px),radial-gradient(circle at 85% 32%,#e9c45d 0 1px,transparent 3px),radial-gradient(circle at 33% 81%,#fff 0 2px,transparent 4px),radial-gradient(circle at 72% 65%,#fff5c8 0 1px,transparent 3px);background-size:211px 251px,277px 303px,389px 367px,163px 191px;animation:celestial-glimmer 7s ease-in-out infinite alternate;opacity:.65}
@keyframes celestial-glimmer{from{opacity:.35}to{opacity:.85}}
header{background:linear-gradient(120deg,#fffffff0,#f7f0e4dd);border-bottom:1px solid #bd9d5a9c;box-shadow:0 8px 35px #9f7e2920,inset 0 -1px #ffffffbd;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
nav a{font-size:13px;font-weight:600}.brand{font-size:10px}.brand b{font-size:14px}
.hero{grid-template-columns:1.1fr .9fr;min-height:900px;gap:48px;padding:60px max(5vw,25px) 85px;background:linear-gradient(90deg,#e1edf6c7 0%,#fff3d670 55%,#f9f2df18),url('/assets/skarb/orkiestra.png') center 34%/cover no-repeat}
.hero:after{background:linear-gradient(0deg,#eff2f5 0%,transparent 25%,transparent 80%,#fff9ee22)}
.hero-copy{padding:42px 42px 35px;border:1px solid #fff;border-radius:30px;background:linear-gradient(130deg,#ffffffed,#fff9ebd9 55%,#e9f3ffe0);box-shadow:0 28px 80px #54688724,0 0 40px #f2d18d40,inset 0 2px 1px #fff;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
h1{font-size:clamp(52px,5.1vw,78px);line-height:1.08;letter-spacing:-1.9px;color:#815720;background:linear-gradient(110deg,#69451c,#a97e2e 48%,#75521f);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 #fff5}
h2{font-size:clamp(38px,3.7vw,54px);color:#865f25}h3{font-size:28px;color:#674c25}
.intro,.lead{font-size:19px;line-height:1.85;color:var(--muted)}
.hero .eyebrow{font-size:11px;letter-spacing:1.8px}.subtitle{font-size:15px;font-weight:600}.breadcrumb{font-size:13px}.status{font-size:12px;color:#40556a;max-width:none}
.button{font-size:14px;padding:15px 23px;border-color:#b08a40;border-radius:12px;background:linear-gradient(115deg,#c3a052,#fff0be 48%,#d1ad61);box-shadow:0 9px 22px #a5833030,inset 0 2px 0 #fff9;font-weight:700}.button.outline{background:#ffffffe0;color:#35475b;box-shadow:inset 0 1px #fff}.text-link{font-size:15px;font-weight:600}
.hero-scene{min-height:690px;display:flex;justify-content:center;align-items:center;padding:22px 0 42px}
.mary-card{position:relative;inset:auto;width:100%;max-width:440px;padding:10px;border:1px solid #e2c984;border-radius:220px 220px 24px 24px;background:linear-gradient(150deg,#fffdf4d9,#f2d79b8c,#ffffffbf);box-shadow:0 30px 80px #7c672b35,0 0 70px #fff1c499,inset 0 2px 0 #fff;transform:translateY(15px)}
.mary-card img{height:auto;aspect-ratio:2/3;object-fit:contain;border-radius:210px 210px 15px 15px;background:#fff6e4}.mary-card figcaption{font-size:19px;font-weight:500;color:#755322;padding:13px 0 5px}
.anniversary{left:-12px;right:auto;top:-10px;z-index:2;color:#8a641f;text-shadow:0 1px #fff,0 0 25px #fff8d9;background:linear-gradient(120deg,#ffffffed,#fff2cfc7);border:1px solid #e4ca8c;border-radius:50%;width:142px;height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 15px 45px #79592320;backdrop-filter:blur(15px)}
.anniversary strong{font-size:72px;letter-spacing:-4px}.anniversary span{font-size:10px;letter-spacing:2px}
.place-caption{bottom:-12px;right:0;left:0;text-align:center;font-size:11px;letter-spacing:2px;color:#775a29}.place-caption span{font-size:11px;letter-spacing:0;margin-top:4px}
.glass,section.content{border:1px solid #fff;box-shadow:var(--shadow),inset 0 2px 1px #fff,0 0 0 1px #d0b17245;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
section.content{background:linear-gradient(125deg,#ffffffed,#f7faffdf 58%,#fff7e7e8);padding:54px;border-radius:27px}.section-no{font-size:13px;font-weight:600}.band{background:linear-gradient(125deg,#fffef8ed,#f1f7ffe5);border-color:#e1c994}.band b{font-size:18px}.band div>span{font-size:13px}
.section-body p,.step p,.format-card p,.program-row p,.responsibility p,.budget p,.route-description p,.checklist-heading p,.invitation p:not(.invitation-date){font-size:17px;line-height:1.85}.section-body .lead{font-size:19px}.format-card .duration{font-size:24px}.format-card .cast,.format-card .use,.format-hint{font-size:15px!important}.format-card h3{font-size:31px}.step h3{font-size:25px}.program-row h3,.responsibility h3{font-size:25px}
.context,.checklists summary,.checklists ul,.contact-card label,.route-help,.date,.cities,.contact-person{font-size:15px}.stage-name{font-size:23px}.stage-date{font-size:13px}.stage-number,.tag{font-size:12px}.route-tabs button{min-height:170px;border-color:#ddc792;background:linear-gradient(140deg,#fffdf7eb,#eff5ffd6)}.route-tabs button[aria-selected=true]{background:linear-gradient(135deg,#344d67,#20394f);border-color:#b58b39}.route-panel{border-color:#d5bb81}.route-panel h3{font-size:40px}.route-panel .date{font-size:18px}.note,.form-note{font-size:13px!important}.sources{font-size:13px;background:#ffffffe0}.sources summary{font-size:15px}.contact-card input,.contact-card select{font-size:17px}.email{font-size:18px}footer{font-size:12px}
.sanctuary-gallery{display:grid;gap:22px}.sanctuary-photo{border-color:#ffffffdb;outline:1px solid #d3b369;border-radius:140px 140px 18px 18px}.sanctuary-photo img{height:330px}.sanctuary-photo figcaption{font-size:13px}.sanctuary-mary{width:66%;justify-self:center}.sanctuary-mary img{height:auto;aspect-ratio:540/712}
@media(max-width:1080px){header{flex-wrap:wrap;gap:12px}.brand{margin-right:auto}.languages{order:2}#menu-toggle{display:block;order:3;background:#ffffffa6;color:var(--ink);border:1px solid #bda263;border-radius:22px;padding:9px 15px;font-size:13px}nav{display:none;order:4;flex-basis:100%;grid-template-columns:repeat(4,1fr);gap:6px 18px;padding:14px 0 4px;border-top:1px solid var(--line)}nav.open{display:grid}nav a{font-size:13px;padding:9px 10px;background:#fff8;border-radius:8px}.hero{gap:28px;padding-inline:4vw;min-height:780px}.hero-copy{padding:31px}.hero-scene{min-height:610px}.mary-card{max-width:380px}h1{font-size:57px}.anniversary{width:120px;height:120px;left:-8px}.anniversary strong{font-size:63px}.intro{font-size:18px}.section-body{padding-left:0}section.content{padding:38px}}
@media(max-width:760px){body{font-size:17px}body:before{background:linear-gradient(115deg,#edf5fbc7,#fff5e5c7),url('/assets/skarb/orkiestra.png') 50% center/cover no-repeat}header{padding:12px 4vw}.brand{font-size:8px;gap:8px}.brand b{font-size:11px}nav{grid-template-columns:repeat(2,1fr)}.hero{display:flex;gap:26px;min-height:0;padding:25px 4vw 42px;background:linear-gradient(0deg,#eff2f5 0%,#f4f4eb75 45%,#fff3d72b),url('/assets/skarb/orkiestra.png') center top/auto 800px no-repeat}.hero-scene{order:1;min-height:0;width:100%;padding:4px 0 38px;align-self:auto}.mary-card{max-width:310px;width:86%;padding:7px;transform:none;border-radius:170px 170px 20px 20px}.mary-card img{height:auto;border-radius:163px 163px 12px 12px}.mary-card figcaption{font-size:17px;padding:10px 0 3px}.anniversary{left:0;top:8px;width:100px;height:100px}.anniversary strong{font-size:54px}.anniversary span{font-size:8px}.place-caption{bottom:0;left:0;right:0;max-width:none;background:transparent;padding:0;font-size:10px;text-align:center}.place-caption span{font-size:10px}.hero-copy{order:2;padding:29px 24px;border-radius:22px;background:linear-gradient(130deg,#ffffffee,#fff9eae5)}h1{font-size:clamp(44px,10.5vw,62px);line-height:1.1;letter-spacing:-1.5px}.hero .eyebrow{font-size:10px;letter-spacing:1.4px}.subtitle{font-size:13px;letter-spacing:1.5px}.intro{font-size:17px}.breadcrumb{font-size:12px}.button{font-size:14px;padding:14px 18px}.hero .buttons{display:grid;grid-template-columns:1fr;gap:12px}.status{font-size:11px}.band b{font-size:17px}.band div>span{font-size:13px}section.content{padding:30px 23px;margin:25px 4vw;border-radius:22px}.section-top{gap:11px}.section-top h2{font-size:36px;line-height:1.15}.section-no{font-size:11px}.section-body .lead{font-size:18px}.section-body p,.step p,.format-card p,.program-row p,.responsibility p,.budget p,.route-description p,.invitation p:not(.invitation-date){font-size:16px;line-height:1.85}.steps{grid-template-columns:1fr}.step{padding:24px}.step h3{font-size:27px}.route-tabs{grid-template-columns:repeat(2,1fr);gap:10px}.route-tabs button{padding:15px;min-height:175px}.stage-name{font-size:22px}.stage-date{font-size:12px}.route-panel{padding:24px}.route-panel h3{font-size:35px}.format-card h3{font-size:30px}.format-card .cast,.format-card .use{font-size:14px!important}.context,.checklists summary,.checklists ul{font-size:15px}.sanctuary-gallery{grid-template-columns:1.1fr .9fr;gap:14px;align-items:center}.sanctuary-photo{border-width:4px;border-radius:100px 100px 14px 14px}.sanctuary-photo img{height:280px}.sanctuary-mary{width:100%}.sanctuary-mary img{height:auto}.sanctuary-photo figcaption{font-size:10px;padding:25px 8px 10px}.contact-card{padding:22px}.email{font-size:16px}.sources{font-size:13px}.sources summary{font-size:15px}}
@media(prefers-reduced-motion:reduce){body:after{animation:none;opacity:.45}}
@media print{body:after{display:none}h1{-webkit-text-fill-color:#333;background:none;color:#333}.hero,section.content,.glass{background:white;box-shadow:none}body{font-size:12px}}

.mary-card img{object-fit:cover;object-position:80% center;aspect-ratio:2/3;height:auto}
