@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Manrope:wght@400;500;600;700&display=swap');

body.page-id-11 { margin:0 !important; background:#071612 !important; }
body.page-id-11 .wp-site-blocks { padding:0 !important; }
body.page-id-11 .wp-site-blocks > header,
body.page-id-11 .wp-site-blocks > footer { display:none !important; }
body.page-id-11 #wp--skip-link--target,
body.page-id-11 .entry-content.wp-block-post-content,
body.page-id-11 .entry-content.wp-block-post-content > .fi-book-app { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }

.fi-book-app,
.fi-book-app * { box-sizing: border-box; }
.fi-book-app { position:relative; width:100%; max-width:none; min-height:100vh; margin:0; overflow:hidden; background:#071612; color:#f5f1e8; font-family:Manrope,system-ui,sans-serif; line-height:1.5; }
.fi-book-app button,
.fi-book-app input,
.fi-book-app textarea { font: inherit; }
.fi-book-app button { cursor: pointer; }
.fi-book-app [hidden] { display: none !important; }
.fi-pattern { position: absolute; inset: 0; opacity: .5; background-image: linear-gradient(30deg,rgba(201,166,83,.035) 12%,transparent 12.5%,transparent 87%,rgba(201,166,83,.035) 87.5%),linear-gradient(150deg,rgba(201,166,83,.035) 12%,transparent 12.5%,transparent 87%,rgba(201,166,83,.035) 87.5%),linear-gradient(30deg,rgba(201,166,83,.035) 12%,transparent 12.5%,transparent 87%,rgba(201,166,83,.035) 87.5%),linear-gradient(150deg,rgba(201,166,83,.035) 12%,transparent 12.5%,transparent 87%,rgba(201,166,83,.035) 87.5%); background-position: 0 0,0 0,28px 49px,28px 49px; background-size:56px 98px; }
.fi-glow { position: absolute; width: 38rem; height: 38rem; border-radius: 50%; filter: blur(130px); pointer-events: none; }
.fi-glow-one { left: -18rem; top: -13rem; background: rgba(20,130,91,.15); }
.fi-glow-two { right: -16rem; bottom: -18rem; background: rgba(205,153,49,.10); }
.fi-shell { position: relative; z-index: 1; width: min(1240px, 100%); margin: auto; padding: 28px 28px 34px; }
.fi-brandbar { display:flex; align-items:center; justify-content:space-between; margin-bottom: 30px; padding: 10px 16px; border:1px solid rgba(255,255,255,.1); border-radius:999px; background:rgba(11,33,27,.76); box-shadow:0 18px 60px rgba(0,0,0,.18); backdrop-filter:blur(18px); }
.fi-brand { display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:#e7e1d6; }
.fi-brandmark { display:grid; place-items:center; width:32px; height:32px; border:1px solid rgba(209,173,82,.42); border-radius:50%; background:rgba(201,166,83,.1); color:#e1c77a; }
.fi-language { padding:6px 11px; border-radius:999px; background:rgba(0,0,0,.22); color:#c8c1b6; font-size:11px; letter-spacing:.05em; }
.fi-language-tools { display:flex; align-items:center; gap:9px; }
.fi-language-switch { display:flex; gap:3px; padding:3px; border:1px solid rgba(209,173,82,.28); border-radius:999px; background:rgba(0,0,0,.26); }
.fi-language-switch button { min-width:37px; height:28px; padding:0 9px; border:0; border-radius:999px; background:transparent; color:#aaa59c; font-size:10px; font-weight:800; letter-spacing:.08em; transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s,color .16s; }
.fi-language-switch button:hover { color:#fff9ea; }
.fi-language-switch button:active { transform:scale(.95); }
.fi-language-switch button.is-active { background:#d5b45c; color:#10271f; box-shadow:0 4px 14px rgba(0,0,0,.2); }
.fi-language-switch button:focus-visible { outline:2px solid #f3d77e; outline-offset:2px; }
.fi-intro { margin: 0 auto 32px; text-align:center; }
.fi-kicker { margin:0 0 10px; color:#d5b45c; font-size:11px; font-weight:700; letter-spacing:.36em; }
.fi-intro h1,.fi-intro h2,.fi-form-heading h3,.fi-success h3 { font-family:'Cormorant Garamond', Georgia, serif; font-weight:600; }
.fi-intro h1 { max-width:920px; margin:0 auto; color:#fffdf7; font-size:clamp(40px,5.5vw,62px); line-height:1; letter-spacing:-.035em; text-wrap:balance; }
.fi-ornament { display:flex; align-items:center; gap:12px; width:130px; margin:18px auto; }
.fi-ornament span { flex:1; height:1px; background:linear-gradient(90deg,transparent,#ba9541); }
.fi-ornament span:last-child { background:linear-gradient(90deg,#ba9541,transparent); }
.fi-ornament i { width:7px; height:7px; transform:rotate(45deg); background:#d4b25b; }
.fi-intro > p:not(.fi-kicker):not(.fi-subtitle) { max-width:720px; margin:0 auto; color:#cbc4ba; font-size:15px; }
.fi-intro h2 { margin:5px auto 0; color:#dbbd6a; font-size:clamp(27px,4vw,38px); }
.fi-subtitle { margin:2px 0 0; color:#9d988f; font-family:Georgia,serif; font-size:15px; font-style:italic; }
.fi-event-meta { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 24px; margin-top:18px; color:#cbc4ba; font-size:13px; }
.fi-event-meta span::before { content:'◆'; margin-right:8px; color:#c9a653; font-size:8px; }
.fi-layout { display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); align-items:start; gap:28px; }
.fi-poster-card,.fi-form-card { overflow:hidden; border-radius:30px; box-shadow:0 32px 90px rgba(0,0,0,.38); }
.fi-poster-card { border:1px solid rgba(255,255,255,.1); background:rgba(12,33,28,.84); }
.fi-poster-wrap { position:relative; aspect-ratio:4/4.45; overflow:hidden; background:#0e2a23; }
.fi-poster-wrap img { width:100%; height:100%; object-fit:cover; object-position:top; display:block; }
.fi-price-overlay { position:absolute; inset:auto 0 0; display:grid; grid-template-columns:1fr; gap:12px; padding:110px 24px 24px; background:linear-gradient(to top,#071612 5%,rgba(7,22,18,.82) 46%,transparent 100%); }
.fi-price { padding:16px; border:1px solid rgba(255,255,255,.1); border-radius:18px; background:rgba(7,22,18,.84); backdrop-filter:blur(12px); }
.fi-price-featured { border-color:rgba(210,174,84,.32); }
.fi-price small,.fi-price span { display:block; color:#a59f95; font-size:10px; letter-spacing:.08em; }
.fi-price strong { display:block; margin:4px 0 1px; color:#f3efe7; font-size:24px; }
.fi-price-featured strong { color:#dfc06c; }
.fi-poster-note { display:flex; align-items:center; gap:10px; padding:16px 24px; border-top:1px solid rgba(255,255,255,.08); color:#c9c2b8; font-size:12px; }
.fi-poster-note span { color:#d4b25b; }
.fi-form-card { border:1px solid rgba(216,180,90,.22); background:#f4f0e7; color:#12231e; }
.fi-form-panel { padding:30px 32px 32px; }
.fi-form-heading { display:flex; align-items:flex-start; gap:13px; margin-bottom:24px; }
.fi-form-icon { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border-radius:13px; background:#113f33; color:#dfc06c; }
.fi-form-heading h3 { margin:0; color:#102c24; font-size:34px; line-height:1; }
.fi-form-heading p { margin:8px 0 0; color:#686761; font-size:13px; line-height:1.65; }
.fi-form { display:grid; gap:19px; }
.fi-fieldset { min-width:0; margin:0; padding:0; border:0; }
.fi-fieldset legend,.fi-field > label { display:block; margin-bottom:8px; color:#5d605b; font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.fi-field > label span { color:#97928a; font-weight:500; letter-spacing:0; text-transform:none; }
.fi-choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.fi-choice { position:relative; display:flex; align-items:flex-start; gap:12px; width:100%; padding:15px; border:1px solid #ded8cc; border-radius:18px; background:rgba(255,255,255,.68); color:#17342b; text-align:left; transition:transform .16s cubic-bezier(.23,1,.32,1),border-color .16s,box-shadow .16s,background .16s; }
.fi-choice:hover { transform:translateY(-1px); border-color:#c7c0b4; background:#fff; }
.fi-choice:active { transform:scale(.98); }
.fi-choice.is-active { border-color:#1b5a47; background:#e3ece6; box-shadow:0 8px 28px rgba(24,78,61,.12); }
.fi-choice[data-mode='donation'].is-active { border-color:#9a762d; background:#f2ead3; box-shadow:0 8px 28px rgba(139,103,37,.12); }
.fi-choice-icon { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; border-radius:11px; background:#efede7; color:#77746e; font-size:18px; }
.fi-choice.is-active .fi-choice-icon { background:#164b3b; color:#e1c36c; }
.fi-choice[data-mode='donation'].is-active .fi-choice-icon { background:#9a762d; color:white; }
.fi-choice strong,.fi-choice small { display:block; }
.fi-choice strong { font-size:13px; }
.fi-choice small { margin-top:4px; color:#77736d; font-size:11px; line-height:1.45; }
.fi-choice b { display:none; position:absolute; right:12px; top:10px; color:#1a5a46; }
.fi-choice.is-active b { display:block; }
.fi-two-col { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.fi-field input,.fi-field textarea { width:100%; border:1px solid #d4cec3; border-radius:13px; background:rgba(255,255,255,.82); color:#12231e; outline:none; transition:border-color .16s,box-shadow .16s,background .16s; }
.fi-field input { height:48px; padding:0 14px; }
.fi-field textarea { resize:vertical; min-height:88px; padding:12px 14px; }
.fi-field input:focus,.fi-field textarea:focus { border-color:#1f5d4a; background:#fff; box-shadow:0 0 0 4px rgba(31,93,74,.10); }
.fi-field input[aria-invalid='true'] { border-color:#b94b40; box-shadow:0 0 0 4px rgba(163,59,49,.09); }
.fi-help { margin:5px 0 0; color:#858079; font-size:10.5px; line-height:1.45; }
.fi-quantity { display:flex; align-items:center; justify-content:space-between; width:190px; height:48px; padding:0 7px; border:1px solid #d4cec3; border-radius:13px; background:rgba(255,255,255,.82); }
.fi-quantity button { display:grid; place-items:center; width:35px; height:35px; border:0; border-radius:9px; background:transparent; color:#5e625e; font-size:21px; transition:transform .15s,background .15s; }
.fi-quantity button:hover { background:#efede8; }
.fi-quantity button:active { transform:scale(.92); }
.fi-quantity input { width:72px; height:auto; padding:0; border:0; background:transparent; text-align:center; font-weight:700; box-shadow:none; }
.fi-quantity input::-webkit-inner-spin-button { display:none; }
.fi-donation-fields { display:grid; gap:14px; padding:16px; border:1px solid rgba(178,141,59,.24); border-radius:18px; background:#f7f1e1; animation:fi-reveal .2s cubic-bezier(.23,1,.32,1) both; }
.fi-consent { display:flex; align-items:flex-start; gap:11px; padding:13px; border:1px solid #e0dbd1; border-radius:13px; background:rgba(255,255,255,.56); color:#686761; font-size:12px; line-height:1.6; }
.fi-consent input { flex:0 0 16px; width:16px; height:16px; margin-top:2px; accent-color:#174b3b; }
.fi-error { min-height:0; margin:5px 0 0; color:#a33b31; font-size:11px; font-weight:600; }
.fi-error:empty { display:none; }
.fi-form-alert { padding:12px 14px; border:1px solid #d9a39c; border-radius:12px; background:#fff0ed; color:#8d3028; font-size:12px; }
.fi-submit { display:flex; align-items:center; justify-content:center; gap:9px; width:100%; min-height:52px; padding:0 20px; border:0; border-radius:13px; background:linear-gradient(90deg,#b58a35,#d7b75e,#c29843); color:#11251f; font-size:13px; font-weight:800; box-shadow:0 10px 30px rgba(173,129,49,.25); transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s,opacity .18s; }
.fi-submit:hover { transform:translateY(-2px); box-shadow:0 14px 38px rgba(173,129,49,.34); }
.fi-submit:active { transform:scale(.98); }
.fi-submit:disabled { cursor:wait; opacity:.7; }
.fi-submit.is-loading span:last-child { animation:fi-pulse .8s ease-in-out infinite alternate; }
.fi-privacy { margin:0; color:#858079; font-size:10.5px; text-align:center; }
.fi-privacy span { color:#1d5a47; }
.fi-success { min-height:610px; padding:40px; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.fi-success-icon { display:grid; place-items:center; width:66px; height:66px; border-radius:50%; background:#0e4a39; color:#e5c86e; font-size:30px; box-shadow:0 12px 34px rgba(12,62,47,.22); }
.fi-success h3 { margin:22px 0 8px; color:#102c24; font-size:42px; }
.fi-success p { max-width:480px; margin:0; color:#686761; line-height:1.7; }
.fi-success button { margin-top:26px; padding:12px 22px; border:0; border-radius:999px; background:#102c24; color:#fff; font-size:13px; font-weight:700; }
.fi-sponsors { margin-top:30px; padding:26px; border:1px solid rgba(216,180,90,.18); border-radius:26px; background:rgba(10,31,25,.72); box-shadow:0 24px 70px rgba(0,0,0,.22); backdrop-filter:blur(16px); }
.fi-sponsors-heading { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:20px; }
.fi-sponsors-mark { color:#d5b45c; font-size:14px; }
.fi-sponsors h2 { margin:0; color:#f7f2e8; font-family:'Cormorant Garamond',Georgia,serif; font-size:30px; font-weight:600; letter-spacing:-.02em; }
.fi-sponsor-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
.fi-sponsor-grid li { display:grid; place-items:center; min-height:118px; padding:16px; overflow:hidden; border:1px solid rgba(255,255,255,.1); border-radius:17px; background:#fff; box-shadow:0 12px 30px rgba(0,0,0,.14); transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s; }
.fi-sponsor-grid li:hover { transform:translateY(-2px); box-shadow:0 16px 38px rgba(0,0,0,.2); }
.fi-sponsor-grid img { display:block; width:100%; max-width:210px; max-height:88px; object-fit:contain; }
.fi-footer { margin-top:28px; color:#706c66; font-size:10px; letter-spacing:.07em; text-align:center; }
.fi-honeypot { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; opacity:0 !important; }
@keyframes fi-reveal { from { opacity:0; transform:translateY(-6px) scale(.985); } to { opacity:1; transform:none; } }
@keyframes fi-pulse { from { transform:translateX(0); } to { transform:translateX(4px); } }
@media (max-width:900px) { .fi-layout { grid-template-columns:1fr; } .fi-poster-card { max-width:620px; margin:auto; } .fi-sponsor-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:640px) { .fi-shell { padding:18px 14px 26px; } .fi-brandbar { margin-bottom:24px; } .fi-brand span:last-child,.fi-language { display:none; } .fi-intro { margin-bottom:24px; } .fi-event-meta { display:grid; gap:7px; } .fi-form-panel { padding:23px 18px 24px; } .fi-form-heading h3 { font-size:30px; } .fi-choice-grid,.fi-two-col { grid-template-columns:1fr; } .fi-price-overlay { padding:90px 14px 14px; } .fi-price { padding:12px; } .fi-price strong { font-size:20px; } .fi-success { min-height:520px; padding:30px 20px; } .fi-sponsors { padding:22px 14px; } .fi-sponsor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .fi-sponsor-grid li { min-height:105px; padding:13px; } .fi-sponsor-grid li:last-child { grid-column:1/-1; } }
@media (prefers-reduced-motion:reduce) { .fi-book-app * { scroll-behavior:auto !important; animation-duration:.01ms !important; transition-duration:.01ms !important; } }
