/* Publishing Ace inner pages - scoped additions. Home page uses only the pa- header/footer links. */
:root { --pa-navy: #2c2f6b; --pa-dark-navy: #222654; --pa-purple: #421044; --pa-gold: #ffbc45; --pa-ink: #202541; --pa-body: #5c6277; --pa-paper: #f6f7fb; --pa-line: #e5e8f1; }

/* The added navigation uses the original site header, logo and call button. */
.pa-header-nav { position: relative; align-items: center; gap: 18px; min-height: 55px; }
.pa-header-nav .pa-brand-link { flex-shrink: 0; line-height: 0; }
.pa-header-nav .pa-brand-link img { width: 200px; max-width: 200px; height: auto; }
.pa-site-links { display: flex; align-items: center; justify-content: center; gap: clamp(12px, 1.65vw, 24px); flex: 1; }
.pa-site-links a { position: relative; color: #fff !important; font-size: 13px; font-weight: 600; white-space: nowrap; padding: 14px 0; transition: color .2s ease; }
.pa-site-links a:after { content: ''; position: absolute; bottom: 6px; left: 0; width: 0; height: 2px; background: var(--pa-gold); transition: width .2s ease; }
.pa-site-links a:hover, .pa-site-links a[aria-current="page"] { color: var(--pa-gold) !important; }
.pa-site-links a:hover:after, .pa-site-links a[aria-current="page"]:after { width: 100%; }
.pa-mobile-menu { display: none; }
.pa-footer-page-links { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.pa-footer-page-links a { white-space: nowrap; }
.pa-footer-page-links a:hover { color: var(--pa-gold) !important; }

/* New page foundations, without changing any of the landing page's original classes. */
.pa-page, .pa-page * { text-transform: none; }
.pa-page { color: var(--pa-ink); background: #fff; }
.pa-page .container { max-width: 1170px; }
.pa-page p { line-height: 1.75; }
.pa-page a { transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
.pa-page :is(a, button, input, textarea, summary):focus-visible { outline: 3px solid #e8a529; outline-offset: 4px; }
.pa-page .header { background: var(--pa-navy); }
.pa-page .header .first-tbn { background: white; color: #121528; }
.pa-page section { padding-top: 0; padding-bottom: 0; }
.pa-page .pa-site-header { padding: .5rem !important; }
.pa-page .pa-heading, .pa-page .pa-hero h1 { letter-spacing: -.035em; }
.pa-skip-link { position: fixed; left: 12px; top: -70px; z-index: 1000; display: block; padding: 10px 18px; border-radius: 6px; background: white; color: #161b44; }
.pa-skip-link:focus { top: 12px; }

/* Shared hero */
.pa-page .pa-hero { position: relative; overflow: hidden; padding: 78px 0 83px; background-image: linear-gradient(106deg, rgba(35,42,98,.97) 0%, rgba(44,37,96,.92) 48%, rgba(60,7,67,.91) 100%), url('../images/cta-bg.png'); background-size: cover; background-position: center; }
.pa-page .pa-hero:after { content: ''; position: absolute; width: 450px; height: 450px; border: 1px solid rgba(255,255,255,.075); border-radius: 50%; right: -240px; top: -170px; pointer-events: none; }
.pa-hero__layout { display: grid; grid-template-columns: minmax(0,1.09fr) minmax(0,.91fr); align-items: center; gap: 40px; }
.pa-hero__copy { position: relative; z-index: 1; }
.pa-crumb { display:flex; align-items:center; gap:12px; margin: 0 0 28px; color:rgba(255,255,255,.7); font-size:12px; }
.pa-crumb a, .pa-crumb span { font-size: 12px; color:rgba(255,255,255,.72); }
.pa-crumb a:hover { color: var(--pa-gold); }
.pa-eyebrow { display:inline-flex; align-items:center; gap:12px; font-weight:800; letter-spacing:.13em; color:#6d4eab; font-size: 12px; line-height: 1.5; }
.pa-eyebrow--light { color:var(--pa-gold); }
.pa-eyebrow-line { display:inline-block; width:23px; height:2px; background:var(--pa-gold); }
.pa-hero h1 { max-width: 650px; color:#fff; font-size:clamp(38px,4.5vw,62px); font-weight:800; line-height:1.15; margin:18px 0 21px; }
.pa-hero h1 em { font-style: normal; color:var(--pa-gold); }
.pa-hero__copy > p { max-width:560px; color:#e5e5f4; font-size:15px; line-height:1.85; }
.pa-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:13px; margin-top:30px; }
.pa-btn { display:inline-flex; gap:22px; justify-content:center; align-items:center; min-height:51px; padding:13px 24px; border-radius:7px; font-size:13px; font-weight:700; border:1px solid transparent; text-align:center; cursor:pointer; }
.pa-btn--gold { background:var(--pa-gold); border-color:var(--pa-gold); color:#1e244a !important; box-shadow: 0 12px 32px rgba(9,11,48,.12); }
.pa-btn--gold:hover { background:#ffcc6e; color:#1e244a !important; transform:translateY(-2px); }
.pa-btn--outline { border-color:rgba(255,255,255,.55); color:#fff !important; background:rgba(255,255,255,.04); }
.pa-btn--outline:hover { color:var(--pa-ink) !important; background:#fff; transform:translateY(-2px); }
.pa-hero__art { min-height:365px; position:relative; isolation:isolate; }
.pa-scene-circle { position:absolute; left:19%; top:10%; width:76%; height:84%; border-radius:50%; border:1px solid rgba(255,255,255,.16); background:radial-gradient(circle at 48% 46%, rgba(249,189,74,.24), rgba(255,255,255,.06) 43%, rgba(255,255,255,0) 72%); z-index:-1; }
.pa-scene-circle:after { content:''; position:absolute; inset:32px; border:1px dashed rgba(255,255,255,.17); border-radius:50%; }
.pa-scene-book { position:absolute; width:70%; max-height:340px; object-fit:contain; filter:drop-shadow(0 20px 15px rgba(0,0,0,.23)); }
.pa-scene-book--back { top:1%; right:0; transform:rotate(10deg); }
.pa-scene-book--front { bottom:2%; left:0; transform:rotate(-6deg); }
.pa-scene-note { position:absolute; right:8%; bottom:0; padding:11px 16px; border-radius:10px; background:#fff; color:var(--pa-navy); font-size:11px; font-weight:800; box-shadow:0 12px 24px rgba(0,0,0,.18); }
.pa-scene-note i { margin-right:7px; color:#be8840; }

/* Content sections */
.pa-page .pa-section { padding:88px 0; }
.pa-section--white { background: #fff; }
.pa-section--mist { background:var(--pa-paper); }
.pa-split { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); align-items:center; gap:clamp(35px,6vw,94px); }
.pa-split--art { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); }
.pa-split__text { max-width:570px; }
.pa-heading { margin:14px 0 20px; font-size:clamp(29px,3.2vw,43px); line-height:1.19; font-weight:800; color:#252847; }
.pa-heading span { color:#66429b; font-size:inherit; line-height:inherit; font-weight:inherit; }
.pa-split__text > p { color:var(--pa-body); font-size:14px; margin:0 0 17px; }
.pa-check-points { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px 18px; margin:27px 0; }
.pa-check-points span { display:flex; align-items:flex-start; gap:10px; font-weight:600; color:#323855; font-size:12px; line-height:1.5; }
.pa-check-points i { color:#1b9a64; margin-top:2px; }
.pa-text-link { display:inline-flex; gap:13px; align-items:center; font-size:13px; font-weight:800; color:var(--pa-navy) !important; border-bottom:2px solid var(--pa-gold); padding-bottom:7px; }
.pa-text-link:hover { color:#95613c !important; }
.pa-feature-visual { position:relative; min-height:370px; display:flex; align-items:center; justify-content:center; background:radial-gradient(circle at 50% 47%, #e9eafb 0%, #f9f9fe 64%, transparent 65%); border-radius:30px; }
.pa-feature-photo { width:100%; max-width:490px; position:relative; z-index:1; }
.pa-feature-photo img { display:block; width:100%; max-height:480px; object-fit:contain; filter:drop-shadow(0 15px 16px rgba(15,21,52,.13)); }
.pa-feature-tag { position:absolute; right:-10px; bottom:24px; padding:14px 20px; border-radius:12px; background:var(--pa-navy); color:white; font-size:12px; font-weight:700; z-index:2; box-shadow:0 12px 28px rgba(29,29,75,.18); }
.pa-feature-tag i { color:var(--pa-gold); margin-right:8px; }
.pa-section-title { max-width:670px; margin-bottom:37px; }
.pa-section-title--center { margin-left:auto; margin-right:auto; text-align:center; }
.pa-section-title .pa-heading { margin:13px 0 13px; }
.pa-section-title > p { color:var(--pa-body); font-size:14px; }
.pa-value-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:23px; }
.pa-value-card { position:relative; overflow:hidden; background:#fff; border:1px solid var(--pa-line); border-radius:17px; padding:35px 31px 34px; box-shadow:0 14px 36px rgba(29,35,65,.035); }
.pa-value-card:before { content:''; position:absolute; left:0; top:0; width:100%; height:4px; background:linear-gradient(90deg,var(--pa-navy),var(--pa-gold)); }
.pa-icon-circle { width:57px; height:57px; display:inline-flex; align-items:center; justify-content:center; background:#f0eefb; color:#514c9e; border-radius:14px; font-size:22px; }
.pa-value-card .pa-card-no { position:absolute; top:34px; right:27px; color:#d6d8e5; font-size:29px; font-weight:800; }
.pa-value-card h3 { color:var(--pa-ink); font-size:18px; font-weight:800; margin:24px 0 13px; }
.pa-value-card p { color:var(--pa-body); font-size:13px; }
.pa-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.pa-steps article { position:relative; border:1px solid var(--pa-line); border-radius:13px; padding:24px 18px; background:#fff; }
.pa-steps article:after { content:'›'; font-size:29px; color:#e0ad50; font-weight:500; position:absolute; right:-12px; top:22px; z-index:2; }
.pa-steps article:last-child:after { display:none; }
.pa-steps article > span { display:inline-flex; width:43px; height:43px; align-items:center; justify-content:center; border-radius:12px; background:var(--pa-navy); color:white; font-size:14px; font-weight:800; }
.pa-steps h3 { font-size:14px; font-weight:800; margin:18px 0 9px; color:var(--pa-ink); }
.pa-steps p { color:var(--pa-body); font-size:12px; }

/* Services */
.pa-services-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.pa-service-card { display:flex; flex-direction:column; min-height:327px; background:white; border:1px solid var(--pa-line); border-radius:15px; padding:25px 22px 23px; box-shadow:0 10px 22px rgba(29,31,70,.035); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.pa-service-card:hover { border-color:#ded3f0; transform:translateY(-5px); box-shadow:0 18px 36px rgba(29,31,70,.09); }
.pa-service-icon { display:flex; width:51px; height:51px; align-items:center; justify-content:center; border-radius:12px; background:#f3f0fc; color:#5b4ca6; font-size:20px; }
.pa-service-no { display:block; font-size:10px; letter-spacing:.1em; font-weight:800; text-transform:uppercase !important; color:#7c65a7; margin-top:20px; }
.pa-service-card h3 { margin:8px 0 11px; font-size:17px; font-weight:800; color:#242745; line-height:1.45; }
.pa-service-card p { color:var(--pa-body); font-size:12px; margin-bottom:21px; }
.pa-service-card a { display:flex; align-items:center; justify-content:space-between; gap:9px; margin-top:auto; padding-top:14px; border-top:1px solid var(--pa-line); color:var(--pa-navy); font-weight:800; font-size:11px; }
.pa-service-card a:hover { color:#a26721; }
.pa-genre-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; }
.pa-genre-grid article { padding:14px 12px 17px; border:1px solid #e6e8f0; border-radius:13px; background:white; text-align:center; }
.pa-genre-grid img { display:block; height:170px; width:100%; object-fit:contain; margin:0 auto 8px; }
.pa-genre-grid h3 { font-size:12px; font-weight:800; color:var(--pa-ink); }

/* Portfolio gallery */
.pa-portfolio-scene { min-height:365px; }
.pa-port-art { position:absolute; top:6%; max-height:345px; width:46%; object-fit:contain; box-shadow:0 14px 32px rgba(0,0,0,.3); }
.pa-port-art--one { left:4%; transform:rotate(-10deg); top:17%; }
.pa-port-art--two { left:32%; z-index:2; transform:rotate(3deg); top:0; }
.pa-port-art--three { right:0; transform:rotate(12deg); top:20%; }
.pa-gallery-filters { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; max-width:1050px; margin:0 auto 22px; }
.pa-filter-btn { font-size:12px; font-weight:700; color:#555b73; padding:10px 17px; background:#f6f6fa; border:1px solid #e3e5ed; border-radius:40px; cursor:pointer; transition:color .2s,background .2s,border-color .2s; }
.pa-filter-btn:hover { color:var(--pa-navy); border-color:#9d9bba; }
.pa-filter-btn.is-active { background:var(--pa-navy); border-color:var(--pa-navy); color:#fff; }
.pa-gallery-count { color:#777b90; font-size:12px; margin-bottom:20px; text-align:center; }
.pa-gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:23px; }
.pa-gallery-card { background:#fff; border:1px solid var(--pa-line); border-radius:15px; overflow:hidden; transition:transform .25s ease,box-shadow .25s ease; }
.pa-gallery-card[hidden] { display:none !important; }
.pa-gallery-card:hover { transform:translateY(-5px); box-shadow:0 18px 34px rgba(29,30,63,.1); }
.pa-gallery-image { display:flex; align-items:center; justify-content:center; aspect-ratio:4/4.7; background:linear-gradient(135deg,#f2f2f8,#ebedf6); padding:19px; }
.pa-gallery-image img { max-width:100%; max-height:100%; width:auto; height:100%; object-fit:contain; filter:drop-shadow(0 9px 8px rgba(20,20,40,.16)); }
.pa-gallery-meta { display:flex; align-items:center; justify-content:space-between; padding:14px 17px; }
.pa-gallery-meta > span:first-child { font-size:12px; font-weight:800; color:var(--pa-ink); }
.pa-gallery-arrow { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:#f5f1fb; color:#58449b; font-size:12px; }
.pa-feature-visual--art .pa-feature-photo { max-width:370px; }

/* Contact */
.pa-contact-scene { display:flex; align-items:center; justify-content:center; }
.pa-contact-scene__circle { width:250px; height:250px; display:flex; align-items:center; justify-content:center; border-radius:48px; border:1px solid rgba(255,255,255,.3); background:linear-gradient(135deg,rgba(253,186,58,.29),rgba(255,255,255,.04)); transform:rotate(-12deg); box-shadow:0 20px 35px rgba(22,5,45,.2); }
.pa-contact-scene__circle i { font-size:96px; color:#ffcb66; transform:rotate(12deg); }
.pa-contact-scene__label { position:absolute; display:flex; align-items:center; gap:9px; background:white; color:#2d3063; border-radius:9px; padding:13px 17px; font-size:12px; font-weight:800; box-shadow:0 15px 35px rgba(0,0,0,.22); }
.pa-contact-scene__label i { color:#af7a28; }
.pa-contact-scene__label--top { top:45px; left:7px; transform:rotate(-6deg); }
.pa-contact-scene__label--bottom { bottom:35px; right:7px; transform:rotate(6deg); }
.pa-contact-scene__spark { position:absolute; color:var(--pa-gold); font-size:40px; }
.pa-contact-scene__spark--one { top:55px; right:60px; }
.pa-contact-scene__spark--two { bottom:33px; left:54px; font-size:20px; }
.pa-contact-grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); gap:clamp(32px,6vw,85px); align-items:start; }
.pa-contact-aside > p { margin-bottom:23px; color:var(--pa-body); font-size:14px; }
.pa-contact-methods { border-top:1px solid var(--pa-line); margin-top:30px; }
.pa-contact-method { display:flex; align-items:flex-start; gap:17px; padding:21px 0; border-bottom:1px solid var(--pa-line); }
.pa-contact-method__icon { display:grid; flex-shrink:0; place-items:center; width:49px; height:49px; border-radius:12px; background:#f0effa; color:var(--pa-navy); font-size:19px; }
.pa-contact-method div:last-child { min-width:0; }
.pa-contact-method div:last-child > span { display:block; color:#82879d; font-size:11px; font-weight:700; margin:3px 0 5px; }
.pa-contact-method a, .pa-contact-method p { color:#2b3156; font-size:14px; line-height:1.55; font-weight:700; overflow-wrap:anywhere; }
.pa-contact-method a:hover { color:#947239; }
.pa-contact-tip { display:flex; align-items:flex-start; gap:16px; padding:19px; margin-top:26px; border-radius:12px; background:#f6f5fc; border-left:3px solid var(--pa-gold); }
.pa-contact-tip > i { margin-top:3px; font-size:20px; color:#aa7c2d; }
.pa-contact-tip h3 { font-size:14px; font-weight:800; margin-bottom:7px; }
.pa-contact-tip p { color:var(--pa-body); font-size:12px; }
.pa-form-card { position:relative; background:#fff; border:1px solid var(--pa-line); border-radius:18px; box-shadow:0 18px 60px rgba(33,35,86,.1); padding:37px 37px 34px; overflow:hidden; }
.pa-form-card:before { content:''; position:absolute; top:0; left:0; right:0; height:5px; background:linear-gradient(90deg,#2c2f6b,#9663a5,#ffbc45); }
.pa-form-intro h2 { font-size:27px; line-height:1.3; font-weight:800; margin:8px 0 6px; color:var(--pa-ink); }
.pa-form-intro p { font-size:12px; color:var(--pa-body); margin-bottom:24px; }
.pa-contact-form { display:flex; flex-direction:column; gap:17px; }
.pa-form-two { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.pa-form-field label { display:block; color:#323653; font-size:12px; font-weight:700; margin-bottom:8px; }
.pa-form-field label span { color:#a95367; }
.pa-form-field input, .pa-form-field textarea { width:100%; min-width:0; border:1px solid #dfe2ed; border-radius:8px; color:var(--pa-ink); background:#fafafe; font-size:13px; line-height:1.5; outline:none; padding:13px 15px; resize:vertical; }
.pa-form-field input { min-height:49px; }
.pa-form-field input:focus, .pa-form-field textarea:focus { outline:none; border-color:#6b66af; box-shadow:0 0 0 3px rgba(82,81,165,.1); background:#fff; }
.pa-form-field input::placeholder, .pa-form-field textarea::placeholder { color:#9ba0b1; }
.pa-btn--submit { display:flex; justify-content:space-between; width:100%; font-size:13px; font-weight:800; color:#fff !important; background:var(--pa-navy); padding:15px 20px; margin-top:4px; }
.pa-btn--submit:hover { color:#fff !important; background:#41468a; }
.pa-form-privacy { font-size:10px; line-height:1.65; color:#7b8194; }
.pa-form-privacy a { text-decoration:underline; color:var(--pa-navy); font-size:inherit; }
.pa-faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.pa-faq-grid details { background:#fff; border:1px solid var(--pa-line); border-radius:12px; padding:22px 23px; }
.pa-faq-grid summary { display:flex; align-items:center; justify-content:space-between; gap:18px; font-weight:800; color:var(--pa-ink); font-size:13px; line-height:1.6; cursor:pointer; list-style:none; }
.pa-faq-grid summary::-webkit-details-marker { display:none; }
.pa-faq-grid summary:after { content:'+'; color:#6e58a7; font-size:22px; }
.pa-faq-grid details[open] summary:after { content:'−'; }
.pa-faq-grid details p { margin-top:15px; font-size:12px; color:var(--pa-body); }
.pa-faq-grid details p a { font-size:inherit; color:var(--pa-navy); text-decoration:underline; }

/* Closing CTA + footer */
.pa-page .pa-cta-band { background:linear-gradient(110deg,rgba(54,6,59,.91),rgba(86,7,72,.89)),url('../images/cta-bg.png') center/cover; padding:54px 0; }
.pa-cta-layout { display:flex; align-items:center; justify-content:space-between; gap:48px; }
.pa-cta-layout > div:first-child { max-width:720px; }
.pa-cta-band h2 { color:#fff; font-size:clamp(27px,3vw,37px); line-height:1.25; font-weight:800; margin:9px 0 11px; }
.pa-cta-band p { color:#ded3e3; font-size:13px; }
.pa-cta-actions { display:flex; align-items:flex-start; flex-direction:column; gap:16px; flex-shrink:0; }
.pa-cta-phone { display:inline-flex; align-items:center; gap:11px; font-size:13px; color:#fff !important; font-weight:700; }
.pa-cta-phone:hover { color:var(--pa-gold) !important; }
.pa-page .pa-site-footer { background:linear-gradient(120deg,rgba(35,11,45,.93),rgba(39,18,55,.94)),url('../images/ft-bg.png') center/cover; padding:63px 0 0; }
.pa-footer-main { display:grid; grid-template-columns: 1.2fr .65fr 1fr 1.08fr; gap:38px; padding-bottom:46px; }
.pa-footer-brand img { max-width:190px; height:auto; }
.pa-footer-brand p { max-width:290px; color:#d5cddb; font-size:12px; margin-top:18px; }
.pa-footer-col, .pa-footer-action { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.pa-footer-col h3 { color:white; font-size:15px; font-weight:800; margin-bottom:8px; }
.pa-footer-col a, .pa-footer-col p { color:#e5deeb; font-size:12px; overflow-wrap:anywhere; line-height:1.55; }
.pa-footer-col a:hover { color:var(--pa-gold); }
.pa-footer-small { color:var(--pa-gold); letter-spacing:.09em; font-size:9px; font-weight:800; }
.pa-footer-action h3 { color:white; font-size:22px; line-height:1.3; font-weight:800; }
.pa-footer-action .pa-btn { min-height:44px; padding:10px 17px; font-size:11px; }
.pa-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:24px 0; border-top:1px solid rgba(255,255,255,.17); }
.pa-footer-bottom p { color:#d7d0df; font-size:11px; }
.pa-footer-bottom div { display:flex; flex-wrap:wrap; gap:25px; }
.pa-footer-bottom a { color:#e0d8e7; font-size:11px; }
.pa-footer-bottom a:hover { color:var(--pa-gold); }

@media (max-width:1199.98px) {
 .pa-site-links { gap:12px; }
 .pa-site-links a { font-size:12px; }
 .pa-header-nav .pa-brand-link img { width:175px; max-width:175px; }
 .pa-header-nav .first-tbn { min-width:225px; }
 .pa-footer-main { gap:22px; }
 .pa-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-service-card { min-height:285px; }
}
@media (max-width:991.98px) {
 .pa-site-links { display:none !important; }
 .pa-header-nav { justify-content:center !important; }
 .pa-header-nav .pa-brand-link img { width:180px; max-width:180px; }
 .pa-mobile-menu { display:block; position:absolute; right:0; top:50%; transform:translateY(-50%); z-index:80; }
 .pa-mobile-menu summary { list-style:none; width:42px; height:41px; border:1px solid rgba(255,255,255,.42); display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; border-radius:7px; color:white; cursor:pointer; }
 .pa-mobile-menu summary::-webkit-details-marker { display:none; }
 .pa-mobile-menu summary span { width:19px; height:2px; background:#fff; border-radius:3px; }
 .pa-mobile-menu[open] summary { background:rgba(255,255,255,.13); }
 .pa-mobile-menu__links { position:absolute; right:0; top:calc(100% + 11px); display:flex; flex-direction:column; min-width:220px; padding:9px; background:white; border:1px solid #e6e7f0; border-radius:10px; box-shadow:0 15px 40px rgba(16,19,61,.22); }
 .pa-mobile-menu__links a { padding:10px 13px; white-space:nowrap; color:#23284d !important; font-size:13px; font-weight:700; border-radius:6px; }
 .pa-mobile-menu__links a:hover, .pa-mobile-menu__links a[aria-current="page"] { color:#5841a0 !important; background:#f6f3fe; }
 .pa-hero__layout { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:20px; }
 .pa-hero h1 { font-size:40px; }
 .pa-scene-book { width:80%; }
 .pa-split { gap:30px; }
 .pa-value-grid { gap:13px; }
 .pa-value-card { padding:30px 22px; }
 .pa-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .pa-steps article:nth-child(3):after { display:none; }
 .pa-genre-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .pa-gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
 .pa-contact-grid { grid-template-columns:1fr 1.05fr; gap:28px; }
 .pa-form-card { padding:28px 22px; }
 .pa-form-two { grid-template-columns:1fr; }
 .pa-footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
 .pa-footer-page-links { justify-content:center; }
}
@media (max-width:767.98px) {
 .pa-page .pa-hero { padding:53px 0 57px; }
 .pa-hero__layout { grid-template-columns:1fr; gap:24px; }
 .pa-hero__copy { text-align:left; }
 .pa-hero h1 { font-size:clamp(34px,8vw,45px); }
 .pa-hero__copy > p { font-size:14px; }
 .pa-hero__art { min-height:245px; max-width:360px; width:100%; margin:auto; }
 .pa-scene-book { max-height:235px; }
 .pa-scene-note { bottom:-4px; right:3%; }
 .pa-port-art { max-height:220px; }
 .pa-contact-scene__circle { width:185px; height:185px; border-radius:33px; }
 .pa-contact-scene__circle i { font-size:74px; }
 .pa-contact-scene__label--top { top:0; }
 .pa-contact-scene__label--bottom { bottom:0; }
 .pa-page .pa-section { padding:63px 0; }
 .pa-split, .pa-split--art { grid-template-columns:1fr; }
 .pa-split--art .pa-split__text { order:1; }
 .pa-split--art .pa-feature-visual { order:2; }
 .pa-feature-visual { min-height:290px; max-width:510px; width:100%; margin:auto; }
 .pa-feature-photo { max-width:370px; }
 .pa-feature-tag { right:0; bottom:8px; }
 .pa-value-grid { grid-template-columns:1fr; }
 .pa-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-steps article:after { display:none; }
 .pa-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-genre-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .pa-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-contact-grid { grid-template-columns:1fr; }
 .pa-form-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-cta-layout { align-items:flex-start; flex-direction:column; gap:25px; }
 .pa-cta-actions { flex-direction:row; flex-wrap:wrap; align-items:center; }
 .pa-faq-grid { grid-template-columns:1fr; }
}
@media (max-width:575.98px) {
 .pa-page .container { padding-left:20px; padding-right:20px; }
 .pa-header-nav .pa-brand-link img { width:157px; max-width:157px; }
 .pa-mobile-menu { right:2px; }
 .pa-hero-actions { align-items:stretch; }
 .pa-hero-actions .pa-btn { width:100%; }
 .pa-hero__art { min-height:224px; max-width:310px; }
 .pa-crumb { margin-bottom:22px; }
 .pa-hero h1 { font-size:36px; }
 .pa-heading { font-size:31px; }
 .pa-genre-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-genre-grid img { height:150px; }
 .pa-services-grid { grid-template-columns:1fr; }
 .pa-service-card { min-height:unset; }
 .pa-steps { grid-template-columns:1fr; }
 .pa-check-points { grid-template-columns:1fr; }
 .pa-gallery-grid { gap:10px; }
 .pa-gallery-image { padding:9px; }
 .pa-gallery-meta { padding:12px; }
 .pa-filter-btn { padding:9px 13px; font-size:11px; }
 .pa-form-two { grid-template-columns:1fr; }
 .pa-form-card { padding:31px 19px 23px; }
 .pa-contact-scene__label { font-size:10px; }
 .pa-page .pa-cta-band { padding:45px 0; }
 .pa-cta-actions { align-items:flex-start; flex-direction:column; }
 .pa-footer-main { grid-template-columns:1fr 1fr; gap:28px 16px; }
 .pa-footer-brand, .pa-footer-action { grid-column:1 / -1; }
 .pa-footer-bottom { align-items:flex-start; flex-direction:column; }
 .pa-footer-page-links { gap:8px; }
}
@media (prefers-reduced-motion: reduce) {
 .pa-page *, .pa-header-nav * { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
