/* Noryk public landing. Scoped so the working demo keeps its own visual language. */
/* Reserve the opening viewport until the module renders; avoid a jumping footer. */
#main:not(:has(> :not(noscript))) { min-height:100svh; }
#main:has(.nojs) { min-height:0; }
body.noryk-home { background:#f5f8fa; color:#12334c; }
.noryk-home .header { position:sticky; top:0; z-index:50; width:100%; max-width:none; min-height:88px; padding:18px max(4.5vw,24px); background:#f5f8faf0; backdrop-filter:blur(18px); border-bottom:1px solid #16384e10; }
.noryk-home .header .brand { font-size:28px; }
.noryk-home .header nav { gap:28px; font-size:12px; }
.noryk-home .header nav a { position:relative; padding-block:10px; }
.noryk-home .header nav a::after { content:""; position:absolute; bottom:3px; left:0; right:0; height:1px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .3s ease; }
.noryk-home .header nav a:hover::after,.noryk-home .header nav a[aria-current]::after { transform:scaleX(1); }
.noryk-home .header .btn { background:#12334c; color:#fff; border-radius:8px; padding:14px 22px; }
.noryk-home .demo-strip { background:#edf3f5; color:#49616e; min-height:32px; letter-spacing:.015em; }
.noryk-home .noryk-service-links { display:none; }
.pl-home { --pl-ink:#12334c; --pl-muted:#4d6676; --pl-teal:#166b79; --pl-line:#d9e3e9; --pl-mint:#bfe7e3; font-size:15px; overflow:clip; }
.pl-home *, .pl-home *::before,.pl-home *::after { box-sizing:border-box; }
.pl-wrap { width:min(1320px,calc(100% - 112px)); margin-inline:auto; }
.pl-home p { color:var(--pl-muted); line-height:1.75; }
.pl-home h1,.pl-home h2,.pl-home h3 { color:var(--pl-ink); font-family:Inter,"Segoe UI",Arial,sans-serif; font-style:normal; }
.pl-home h1 { font-size:clamp(56px,6.2vw,91px); font-weight:550; line-height:1.015; letter-spacing:-.073em; margin:0 0 28px; }
.pl-home h1>span { color:var(--pl-teal); }
.pl-home h2 { font-size:clamp(36px,3.8vw,55px); font-weight:500; letter-spacing:-.055em; line-height:1.12; margin:0; }
.pl-home h2>span { color:#5c7887; }
.pl-home h3 { font-size:25px; line-height:1.22; letter-spacing:-.035em; font-weight:550; }
.pl-home .pl-eyebrow { font-size:10px; line-height:1.5; font-weight:650; letter-spacing:.16em; color:#426375; display:flex; align-items:center; gap:9px; margin:0 0 23px; }
.pl-signal { display:inline-block; flex:none; width:6px; height:6px; border-radius:50%; background:#258171; box-shadow:0 0 0 4px #2581710b; }
.pl-hero { display:grid; grid-template-columns:1.05fr 1fr; align-items:center; gap:44px; padding-block:92px 78px; min-height:730px; }
.pl-hero-copy { position:relative; z-index:2; padding:0; }
.pl-hero .pl-intro { font-size:17px; max-width:440px; margin-bottom:28px; line-height:1.8; }
.pl-actions { display:flex; align-items:center; flex-wrap:wrap; gap:25px; }
.pl-home .pl-button { border:1px solid #12334c; background:#12334c; color:white; padding:18px 24px; border-radius:8px; gap:34px; min-height:57px; font-size:13px; font-weight:600; box-shadow:0 3px 0 #15394a06,0 8px 20px #173b5010; transition:background .25s,transform .3s,box-shadow .3s; }
.pl-home .pl-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:15px; border:0; padding:12px 0; min-height:44px; color:#193f55; background:transparent; font-size:13px; font-weight:600; line-height:1.4; text-decoration:none; }
.pl-home .pl-text-link:hover { color:#116d7d; }
.pl-home .pl-text-link .line-icon,.pl-home .pl-button .line-icon { width:17px; height:17px; }
.pl-home .pl-hero-note { font-size:11px; margin:15px 0 36px; color:#526978; }
.pl-hero-signature { display:flex; gap:15px; align-items:center; font-size:11px; color:#516c7a; }
.pl-signature-line { width:38px; height:1px; background:#7695a3; }
.pl-signature-symbol { font-size:24px; color:#4c908f; margin-left:5px; }
.pl-hero-visual { position:relative; min-width:0; padding:40px 0 25px; isolation:isolate; }
.pl-orbit { position:absolute; width:125%; aspect-ratio:1; border:1px solid #88b5bb28; border-radius:50%; left:-6%; top:0; z-index:-1; background:radial-gradient(ellipse at 45% 45%,#c3e5e865 0%,#d9e9f140 45%,transparent 69%); }
.pl-orbit::before,.pl-orbit::after { content:""; position:absolute; inset:10%; border:1px solid #88b5bb22; border-radius:50%; }
.pl-orbit::after { inset:23%; }
.pl-visual-label { display:flex; justify-content:space-between; font-size:9px; font-weight:500; letter-spacing:.13em; color:#4f6e7e; padding:0 10px 24px; }
.pl-visual-foot { display:block; text-align:center; font-size:10px; color:#5b737f; margin-top:14px; }
.pl-home .product-scene { padding:0; margin:0; background:transparent; transform:translate(var(--pl-x,0px),var(--pl-y,0px)); transition:transform .7s cubic-bezier(.2,.8,.2,1); }
.pl-home .scene-stage { padding:24px 12px 46px; min-height:0; width:100%; max-width:unset; background:transparent; border-radius:0; }
.pl-home .scene-browser { transform:rotate(-2deg); box-shadow:0 28px 70px -28px #13344c5a,0 0 0 1px #163e5020; border:1px solid #fff; border-radius:12px; overflow:hidden; position:relative; z-index:1; background:#fff; }
.pl-home .scene-bar { background:#fff; min-height:35px; color:#496171; border-bottom:1px solid #e5ecef; }
.pl-home .scene-screen { min-height:330px; }
.pl-home .scene-website { background:#f7f5f0; }
.pl-home .scene-site-top { border-bottom-color:#dedfd8; }
.pl-home .scene-site-layout { grid-template-columns:1.06fr 1fr; gap:12px; padding:24px 19px 16px; }
.pl-home .scene-site-layout h2 { font-family:Georgia,serif; font-size:clamp(24px,2.4vw,36px); letter-spacing:-.04em; }
.pl-home .scene-site-layout h2 em { color:#596653; }
.pl-home .scene-site-layout p { font-size:11px; color:#4f5f51; }
.pl-home .scene-portrait { min-height:204px; border-radius:2px 55px 2px 2px; }
.pl-home .scene-portrait img { width:100%; height:100%; object-fit:cover; }
.pl-home .scene-service { color:#465445; }
.pl-home .scene-receipt { z-index:2; bottom:19px; right:-9px; left:auto; width:88%; padding:18px; border-radius:12px; background:#fff; border:1px solid #e3ecee; box-shadow:0 17px 40px -20px #163b505c; transform:rotate(2deg); }
.pl-home .scene-receipt b { font-size:12px; color:#12334c; }
.pl-home .scene-receipt span { font-size:10px; }
.pl-home .scene-receipt>div>span { color:#4d6676; }
.pl-home .receipt-icon { background:#e3f1ed; color:#277763; }
.pl-home .receipt-spark { color:#197b82; }
.pl-home .scene-controls { margin:12px 0 0; padding:0 4px; }
.pl-home .scene-controls>div { background:#e5eff2; padding:5px; border:1px solid #d7e5ea; border-radius:8px; gap:4px; }
.pl-home .scene-controls button { min-height:37px; font-size:11px; border-radius:5px; padding:9px 13px; color:#476676; }
.pl-home .scene-controls button[aria-pressed=true] { background:#fff; color:#12334c; box-shadow:0 2px 4px #1745590a; }
.pl-home .scene-controls>.motion-switch { width:37px; height:37px; min-height:37px; padding:0; border-radius:50%; }
.pl-home .scene-description { display:none; }
.pl-home .scene-offer h2,.pl-home .scene-calendar h2 { font-size:32px; }
.pl-foundation { display:flex; gap:32px; align-items:center; justify-content:space-between; padding:30px 0; border-top:1px solid var(--pl-line); border-bottom:1px solid var(--pl-line); }
.pl-foundation>p { font-size:13px; margin:0; padding-right:55px; }
.pl-foundation strong { font-weight:550; color:#163c51; }
.pl-foundation>div { display:flex; align-items:center; gap:12px; font-weight:550; font-size:14px; white-space:nowrap; }
.pl-foundation .line-icon { width:21px; height:21px; color:#57878d; }
.pl-plus { color:#7c969e; font-size:20px; font-weight:300; }
.pl-section { padding-block:110px; }
.pl-section-heading { display:flex; gap:65px; justify-content:space-between; align-items:flex-end; margin-bottom:45px; }
.pl-section-heading>div { flex:1; }
.pl-section-heading>p { font-size:14px; width:285px; max-width:32%; margin:0 0 3px; }
.pl-gallery-controls { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:25px; }
.pl-gallery-tabs { display:flex; flex-wrap:wrap; gap:6px; }
.pl-gallery-tabs button { border:1px solid transparent; background:transparent; color:#4d6473; padding:12px 16px; min-height:44px; border-radius:6px; font-size:12px; transition:background .25s,color .25s,border-color .25s; }
.pl-gallery-tabs button[aria-pressed=true] { background:#fff; color:#12334c; border-color:#d5e2e7; box-shadow:0 2px 5px #12334c04; }
.pl-gallery-count { font-size:11px; color:#566f7a; }
.pl-gallery-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:20px; }
.pl-gallery-grid:has(> :last-child:nth-child(2)) { grid-template-columns:1fr 1fr; }
.pl-project { display:block; text-align:left; min-width:0; border:0; background:transparent; color:#15384d; padding:0; }
.pl-project-art { display:block; position:relative; height:365px; overflow:hidden; border-radius:10px; background:#dde8e9; isolation:isolate; }
.pl-project-art>img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.22,1,.36,1); }
.pl-project-shade { position:absolute; inset:0; background:linear-gradient(180deg,#0b263c88 0%,#0b23370a 35%,#0a1c29bb 100%); }
.pl-project-brand { position:absolute; top:23px; left:22px; right:22px; color:#fff; font-family:Georgia,serif; font-size:17px; font-weight:400; }
.pl-project-title { position:absolute; bottom:47px; left:22px; right:18px; color:#fff; font-size:32px; line-height:1.07; letter-spacing:-.05em; font-weight:500; }
.pl-project-featured .pl-project-title { font-size:37px; }
.pl-project-tag { position:absolute; bottom:22px; left:22px; color:#e0edf0; font-size:8px; letter-spacing:.14em; }
.pl-project-dj .pl-project-title,.pl-project-video .pl-project-title { text-transform:uppercase; font-weight:650; font-size:31px; }
.pl-project-massage .pl-project-title,.pl-project-katze .pl-project-title { font-family:Georgia,serif; font-style:italic; font-weight:400; }
.pl-project-massage .pl-project-art>img { object-position:65% center; }
.pl-project-caption { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:19px 0 0; }
.pl-project-caption>span:first-child { display:grid; gap:5px; }
.pl-project-caption small { font-size:10px; color:#536f7c; }
.pl-project-caption b { font-size:14px; font-weight:550; }
.pl-round-arrow { display:flex; width:36px; height:36px; justify-content:center; align-items:center; border:1px solid #cbdce2; border-radius:50%; transition:background .3s,transform .3s; }
.pl-round-arrow .line-icon { width:15px; }
.pl-home .pl-gallery-note { margin:28px 0; font-size:13px; }
.pl-all-examples { border-top:1px solid var(--pl-line); padding:0; }
.pl-all-examples>summary { display:flex; align-items:center; justify-content:space-between; padding:20px 0; cursor:pointer; list-style:none; font-size:13px; font-weight:600; }
.pl-all-examples>summary::-webkit-details-marker { display:none; }
.pl-all-examples>summary>span { font-size:22px; font-weight:300; }
.pl-all-examples[open]>summary>span { transform:rotate(45deg); }
.pl-all-examples .project-examples { padding:25px 0; }
.pl-home .pl-disclosure { font-size:10px; margin:0; }
.pl-flow { background:#102f45; color:#fff; position:relative; isolation:isolate; padding-block:98px; scroll-margin-top:100px; }
.pl-flow::before { content:""; position:absolute; inset:0; pointer-events:none; z-index:-1; background:radial-gradient(ellipse at 80% 60%,#205767a0,transparent 53%); }
.pl-flow-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:100px; align-items:center; }
.pl-flow .pl-eyebrow { color:#acd4db; }
.pl-flow h2 { color:#fff; font-size:clamp(36px,3.5vw,51px); }
.pl-flow h2>span { color:#9dcacd; }
.pl-flow-copy>p:not(.pl-eyebrow) { color:#c2d3dd; font-size:14px; margin:25px 0 30px; max-width:415px; }
.pl-flow-steps { display:grid; margin:0 0 25px; }
.pl-flow-steps button { display:flex; align-items:center; gap:17px; width:100%; border:0; border-top:1px solid #ffffff20; border-radius:0; background:transparent; color:#bed1dd; padding:22px 0; text-align:left; transition:color .3s; }
.pl-flow-steps button:last-child { border-bottom:1px solid #ffffff20; }
.pl-step-number { font-size:10px; align-self:flex-start; padding-top:4px; color:#9eb8c4; }
.pl-flow-steps button>span:nth-child(2) { display:grid; gap:7px; }
.pl-flow-steps b { font-size:15px; font-weight:500; }
.pl-flow-steps small { font-size:11px; color:#adc7d0; }
.pl-step-arrow { margin-left:auto; opacity:.5; font-size:18px; }
.pl-flow-steps button[aria-pressed=true] { color:#fff; }
.pl-flow-steps button[aria-pressed=true] .pl-step-number { color:#a1e2d2; }
.pl-flow-steps button[aria-pressed=true] .pl-step-arrow { opacity:1; color:#a1e2d2; transform:translateX(0); }
.pl-dark-link { display:inline-flex; align-items:center; gap:22px; color:#d4eceb; font-size:12px; min-height:44px; }
.pl-dark-link .line-icon { width:17px; }
.pl-flow-display { min-width:0; padding-top:5px; }
.pl-flow-window { border:1px solid #ffffffb0; border-radius:13px; background:#fff; box-shadow:0 24px 65px #03152240; overflow:hidden; color:#143a50; transform:rotate(1.5deg); }
.pl-ui-bar { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:10px; padding:16px 20px; color:#5a7480; background:#f3f7f8; border-bottom:1px solid #e4ecee; }
.pl-ui-bar>span:first-child { display:flex; gap:4px; }
.pl-ui-bar i { width:5px; height:5px; border-radius:50%; background:#adc1c9; }
.pl-ui-bar .line-icon { width:14px; height:14px; }
.pl-flow-content { height:395px; padding:25px; overflow:hidden; }
.pl-inbox-top { display:flex; align-items:center; gap:11px; margin-bottom:20px; }
.pl-avatar { display:grid; place-items:center; width:35px; height:35px; border-radius:50%; background:#e2eef0; font-size:10px; font-weight:650; }
.pl-inbox-top>div { display:grid; gap:1px; }
.pl-inbox-top b { font-size:12px; font-weight:600; }
.pl-inbox-top small { font-size:10px; color:#5c727e; }
.pl-status { display:inline-block; background:#e8f3ed; color:#276249; padding:5px 8px; font-size:9px; border-radius:4px; margin-left:auto; }
.pl-request-image { display:grid; grid-template-columns:.78fr 1fr; gap:18px; align-items:center; margin-bottom:17px; background:#f3f6f5; border:1px solid #e8eeeb; padding:11px; border-radius:7px; }
.pl-request-image>img { width:100%; height:136px; object-fit:cover; border-radius:4px; }
.pl-request-image small,.pl-overline { font-size:8px; letter-spacing:.1em; color:#526a76; }
.pl-request-image h3 { font-size:22px; font-weight:500; margin:9px 0; }
.pl-request-image span { font-size:10px; color:#496774; }
.pl-data-row { display:flex; justify-content:space-between; gap:10px; padding:13px 0; border-bottom:1px solid #e0e8eb; font-size:11px; color:#4d6675; }
.pl-data-row b { color:#183e51; font-size:11px; font-weight:550; }
.pl-home .pl-ui-note { font-size:10px; margin:16px 0 0; }
.pl-ui-footer { display:flex; gap:9px; align-items:center; border-top:1px solid #e5ecee; padding:13px 25px; font-size:8px; letter-spacing:.1em; color:#4d6a79; background:#f9fbfb; }
.pl-document-heading { display:flex; align-items:center; margin:0 0 22px; }
.pl-document-icon { display:grid; width:40px; height:40px; place-items:center; background:#ecf3f5; color:#397586; border-radius:9px; }
.pl-flow-content>.pl-overline { display:block; margin:0 0 10px; }
.pl-flow-content>h3 { font-size:32px; margin:0 0 16px; }
.pl-total { display:flex; justify-content:space-between; align-items:center; margin-top:20px; font-size:12px; }
.pl-total strong { font-size:30px; font-weight:500; letter-spacing:-.04em; }
.pl-calendar-heading { display:flex; gap:10px; align-items:flex-start; }
.pl-calendar-heading h3 { font-size:25px; margin:10px 0 23px; }
.pl-week { display:grid; grid-template-columns:repeat(5,1fr); gap:7px; border-block:1px solid #e4edef; padding:12px 0; }
.pl-week>div { display:grid; gap:9px; text-align:center; padding:8px 0; border-radius:5px; }
.pl-week span { font-size:10px; color:#5c7480; }
.pl-week b { font-size:20px; font-weight:500; }
.pl-week .pl-selected-day { background:#dceeea; color:#245847; }
.pl-calendar-booking { display:flex; gap:14px; align-items:center; background:#e7f1ef; border-left:3px solid #69a79b; border-radius:4px; padding:16px 10px; margin-top:17px; }
.pl-calendar-booking>span { font-size:11px; }
.pl-calendar-booking>div { display:grid; gap:3px; }
.pl-calendar-booking b { font-size:11px; font-weight:550; }
.pl-calendar-booking small { font-size:10px; }
.pl-calendar-booking>.line-icon { width:16px; color:#398975; margin-left:auto; }
.pl-calendar-buffer { display:flex; gap:14px; font-size:10px; color:#526d7b; padding:12px 10px; }
.pl-payment-note { display:flex; gap:12px; align-items:center; margin-top:10px; padding-top:14px; border-top:1px solid #e2ebed; font-size:10px; color:#355a65; }
.pl-payment-note>.line-icon { width:15px; color:#397c65; }
.pl-payment-note span { display:flex; flex:1; flex-wrap:wrap; gap:8px; justify-content:space-between; }
.pl-connected { display:flex; gap:17px; justify-content:center; align-items:center; margin:30px 0 0; font-size:12px; line-height:1.7; color:#aac8d1; }
.pl-connected>span:first-child { font-size:40px; font-weight:200; color:#84b3bc; }
.pl-connected b { font-weight:500; color:#e4f3f3; }
.pl-detail-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:22px; }
.pl-detail-image { position:relative; overflow:hidden; min-height:470px; isolation:isolate; border-radius:11px; background:#112f40; }
.pl-detail-image>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.pl-detail-image::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,transparent 30%,#061e31dd 100%); }
.pl-detail-image>div { position:absolute; inset:auto 35px 35px; }
.pl-detail-image h3 { font-size:37px; font-weight:450; color:#fff; margin:0 0 12px; }
.pl-detail-image .pl-eyebrow { color:#d7e9ed; margin-bottom:15px; }
.pl-detail-image p:last-child { color:#d7e9ed; font-size:12px; margin:0; }
.pl-image-credit { position:absolute; top:22px; right:22px; font-size:8px; color:#fff; background:#112b3c80; border-radius:3px; padding:5px 8px; letter-spacing:.1em; }
.pl-detail-calendar { background:#eaf1f3; border-radius:11px; padding:35px; }
.pl-detail-icon { display:grid; place-items:center; width:43px; height:43px; border:1px solid #c5d8de; border-radius:11px; color:#3d7e89; margin-bottom:24px; flex:none; }
.pl-detail-icon .line-icon { width:20px; height:20px; }
.pl-detail-calendar h3 { font-size:34px; margin:0 0 16px; }
.pl-detail-calendar>p { max-width:310px; font-size:13px; }
.pl-schedule { background:#f8fbfc; border:1px solid #d5e2e7; border-radius:8px; padding:10px 16px; margin:23px 0 13px; }
.pl-schedule>div { display:flex; gap:15px; align-items:center; min-height:43px; padding:9px 0; border-bottom:1px solid #e2ebef; }
.pl-schedule>div:last-child { border:0; }
.pl-schedule span { font-size:10px; color:#536f7c; }
.pl-schedule b { font-size:11px; font-weight:500; }
.pl-schedule-break { color:#306553; }
.pl-schedule .line-icon { margin-left:auto; width:14px; height:14px; }
.pl-detail-small { display:flex; gap:24px; border:1px solid #d5e2e7; border-radius:11px; padding:30px; background:#fafcfc; }
.pl-detail-small h3 { margin:2px 0 12px; font-size:22px; }
.pl-detail-small p { font-size:13px; margin:0 0 5px; }
.pl-detail-small .pl-detail-icon { margin:0; }
.pl-detail-service { background:#eff5f3; border-color:#d7e6df; }
.pl-pricing { background:#edf3f5; border-block:1px solid #e1eaee; }
.pl-prices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.pl-price { background:#fafdfe; border:1px solid #d5e2e7; border-radius:10px; padding:29px; display:flex; flex-direction:column; }
.pl-price-top { display:flex; gap:10px; flex-wrap:wrap; justify-content:space-between; align-items:center; margin-bottom:29px; }
.pl-price-top>span { font-size:17px; font-weight:600; }
.pl-price-top>small { font-size:8px; letter-spacing:.1em; color:#587483; }
.pl-price h3 { font-size:22px; line-height:1.4; min-height:62px; margin:0 0 23px; max-width:235px; font-weight:450; }
.pl-price-amount { display:flex; align-items:baseline; gap:10px; }
.pl-price-amount strong { font-size:53px; letter-spacing:-.06em; font-weight:500; line-height:1.1; }
.pl-price-amount>span { font-size:11px; color:#4a6575; }
.pl-home .pl-price-term { font-size:10px; line-height:1.85; margin:13px 0 23px; }
.pl-price ul { list-style:none; padding:21px 0 4px; margin:0; border-top:1px solid #d9e5ea; }
.pl-price li { display:flex; align-items:flex-start; gap:9px; font-size:11px; line-height:1.5; margin-bottom:13px; }
.pl-price li .line-icon { flex:none; width:13px; height:16px; color:#448776; }
.pl-price .pl-price-setup { font-size:10px; margin:14px 0 25px; }
.pl-price-link { display:flex; justify-content:space-between; align-items:center; gap:15px; min-height:44px; margin-top:auto; padding:13px 15px; border:1px solid #c7d9e1; border-radius:5px; font-size:12px; font-weight:550; }
.pl-price-link .line-icon { width:15px; height:15px; }
.pl-price-featured { border-color:#143a50; background:#173e54; color:#fff; position:relative; box-shadow:0 20px 40px -27px #173e5470; }
.pl-price-featured h3 { color:#fff; }
.pl-price-featured .pl-price-top>small { color:#b8dadc; }
.pl-price-featured .pl-price-amount>span,.pl-price-featured .pl-price-term,.pl-price-featured .pl-price-setup { color:#c6dce5; }
.pl-price-featured ul { border-color:#ffffff25; }
.pl-price-featured li .line-icon { color:#a5dcca; }
.pl-price-featured .pl-price-link { border-color:#bce2da; background:#bce2da; color:#123c42; }
.pl-home .pl-price-disclosure { font-size:11px; max-width:940px; margin:27px 0 10px; }
.pl-faq { display:grid; grid-template-columns:1fr 1.08fr; gap:100px; }
.pl-faq>div>p:not(.pl-eyebrow) { font-size:13px; margin:28px 0 0; }
.pl-faq-list { border-top:1px solid var(--pl-line); }
.pl-faq-list details { border-bottom:1px solid var(--pl-line); padding:0; }
.pl-faq-list summary { cursor:pointer; padding:23px 0; display:flex; gap:20px; justify-content:space-between; align-items:center; list-style:none; font-weight:500; font-size:14px; }
.pl-faq-list summary::-webkit-details-marker { display:none; }
.pl-faq-list summary>span { font-size:21px; font-weight:300; color:#628894; transition:transform .3s; }
.pl-faq-list details[open] summary>span { transform:rotate(45deg); }
.pl-faq-list details>p { font-size:13px; margin:0 0 23px; max-width:95%; }
.pl-finale { padding:85px 0 0; background:#dceced; text-align:center; overflow:hidden; }
.pl-finale .pl-eyebrow { justify-content:center; margin-bottom:25px; color:#3b6875; }
.pl-finale h2 { font-size:clamp(42px,4.7vw,70px); line-height:1.13; }
.pl-finale h2>span { color:#2b6978; }
.pl-finale .pl-actions { justify-content:center; margin:35px 0 20px; }
.pl-finale .pl-wrap>p:not(.pl-eyebrow) { font-size:12px; }
.pl-finale-mark { font-size:clamp(130px,26vw,410px); line-height:.86; letter-spacing:-.09em; font-weight:650; color:#577d89; margin:65px auto -4%; user-select:none; }
.pl-finale-mark span { font-size:.05em; letter-spacing:0; vertical-align:top; display:inline-block; padding-top:.9em; }
.noryk-home .footer { background:#eaf2f4; border-top:1px solid #cddfe4; padding:44px max(4.5vw,24px); font-size:12px; }
.noryk-home .footer small { color:#4d6774; }
.pl-home button:focus-visible,.pl-home a:focus-visible,.pl-home summary:focus-visible { outline:3px solid #23899b; outline-offset:5px; }
.pl-flow button:focus-visible,.pl-flow a:focus-visible { outline-color:#bce2da; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  body:not(.motion-paused) .pl-button:hover { transform:translateY(-2px); box-shadow:0 9px 22px #16394c24; background:#1b4e66; }
  body:not(.motion-paused) .pl-project:hover .pl-project-art>img { transform:scale(1.055); }
  body:not(.motion-paused) .pl-project:hover .pl-round-arrow { transform:rotate(-8deg); background:#e0eef0; }
  body:not(.motion-paused) .pl-price-link:hover { transform:translateY(-2px); }
}
@media (min-width:1600px) { .pl-hero { padding-block:100px 95px; } }
@media (max-width:1100px) {
 .pl-wrap { width:calc(100% - 64px); }
 .pl-hero { gap:22px; padding-block:65px; min-height:0; }
 .pl-home h1 { font-size:clamp(48px,6.5vw,73px); }
 .pl-hero .pl-intro { font-size:15px; }
 .pl-hero .pl-actions { gap:18px; }
 .pl-hero-visual { padding-top:25px; }
 .pl-home .scene-site-layout { padding:20px 14px 14px; gap:10px; }
 .pl-home .scene-site-layout h2 { font-size:27px; }
 .pl-home .scene-screen { min-height:310px; }
 .pl-home .scene-portrait { min-height:185px; }
 .pl-home .scene-receipt { right:0; padding:14px; }
 .pl-foundation { gap:20px; }
 .pl-foundation>p { padding-right:15px; }
 .pl-foundation>div { gap:8px; font-size:12px; }
 .pl-section { padding-block:85px; }
 .pl-section-heading { gap:35px; }
 .pl-section-heading>p { max-width:30%; font-size:13px; }
 .pl-flow-grid { gap:55px; }
 .pl-flow { padding-block:85px; }
 .pl-gallery-count { display:none; }
 .pl-project-art { height:310px; }
 .pl-project-featured .pl-project-title { font-size:31px; }
 .pl-project-title,.pl-project-dj .pl-project-title,.pl-project-video .pl-project-title { font-size:27px; }
 .pl-detail-calendar { padding:28px; }
 .pl-detail-image { min-height:445px; }
 .pl-faq { gap:50px; }
 .pl-price { padding:23px; }
}
@media (max-width:800px) {
 .noryk-home .header { min-height:78px; padding:17px 25px; gap:18px; }
 .noryk-home .header nav { gap:17px; }
 .noryk-home .header .brand small { display:none; }
 .pl-wrap { width:calc(100% - 48px); }
 .pl-home h1 { font-size:clamp(60px,9vw,76px); }
 .pl-hero { grid-template-columns:1fr; gap:15px; padding-top:57px; padding-bottom:50px; }
 .pl-hero .pl-intro { max-width:490px; font-size:16px; }
 .pl-hero-visual { width:min(540px,100%); margin:0 auto; padding-top:10px; }
 .pl-home .scene-site-layout h2 { font-size:33px; }
 .pl-home .scene-site-layout { padding:22px; }
 .pl-home .scene-screen { min-height:345px; }
 .pl-home .scene-portrait { min-height:220px; }
 .pl-hero-note { margin-bottom:24px; }
 .pl-hero-signature { margin-bottom:15px; }
 .pl-section-heading { display:block; }
 .pl-section-heading>p { width:auto; max-width:470px; margin:25px 0 0; }
 .pl-home h2 { font-size:39px; }
 .pl-foundation { flex-wrap:wrap; gap:20px; }
 .pl-foundation>p { width:100%; }
 .pl-foundation>p br { display:none; }
 .pl-foundation>p strong { margin-left:4px; }
 .pl-foundation>div { font-size:12px; }
 .pl-foundation>div .line-icon { width:17px; }
 .pl-gallery-grid { gap:15px; grid-template-columns:1fr 1fr; }
 .pl-project-featured { grid-column:1/-1; }
 .pl-gallery-grid:has(> :last-child:nth-child(2))>.pl-project-featured { grid-column:auto; }
 .pl-project-art { height:295px; }
 .pl-project-featured .pl-project-art { height:365px; }
 .pl-project-featured .pl-project-title { font-size:42px; }
 .pl-gallery-grid:has(> :last-child:nth-child(2)) .pl-project-art { height:330px; }
 .pl-gallery-grid:has(> :last-child:nth-child(2)) .pl-project-title { font-size:31px; }
 .pl-flow-grid { grid-template-columns:1fr; gap:45px; }
 .pl-flow-copy>p:not(.pl-eyebrow) { max-width:500px; }
 .pl-flow-display { width:min(500px,95%); margin:auto; }
 .pl-detail-grid { gap:18px; }
 .pl-detail-image { min-height:430px; }
 .pl-detail-image>div { inset:auto 22px 25px; }
 .pl-detail-image h3 { font-size:30px; }
 .pl-detail-calendar { padding:23px; }
 .pl-detail-calendar h3 { font-size:29px; }
 .pl-schedule { padding-inline:10px; }
 .pl-schedule>div { gap:8px; }
 .pl-schedule b { font-size:10px; }
 .pl-detail-small { display:block; padding:25px; }
 .pl-detail-small .pl-detail-icon { margin-bottom:20px; }
 .pl-prices { grid-template-columns:1fr; gap:18px; }
 .pl-price { display:grid; grid-template-columns:1fr 1fr; column-gap:32px; padding:28px; }
 .pl-price-top { grid-column:1/-1; margin-bottom:16px; }
 .pl-price h3 { grid-column:1; min-height:0; margin-bottom:20px; }
 .pl-price-amount { grid-column:1; }
 .pl-price .pl-price-term { grid-column:1; }
 .pl-price ul { grid-column:2; grid-row:2/5; padding:15px 0 0; border-top:0; }
 .pl-price .pl-price-setup { grid-column:1; margin:5px 0 0; }
 .pl-price-link { grid-column:2; grid-row:5; margin:0; align-self:end; }
 .pl-faq { grid-template-columns:1fr; gap:40px; }
 .pl-finale h2 { font-size:48px; }
}
@media (max-width:540px) {
 .noryk-home .header { display:flex; flex-wrap:wrap; gap:12px; padding:14px 20px 0; min-height:0; }
 .noryk-home .header .brand { font-size:24px; margin-right:auto; }
 .noryk-home .header .btn { font-size:10px; padding:11px 15px; min-height:37px; order:1; }
 .noryk-home .header .global-motion { order:2; width:30px; height:30px; }
 .noryk-home .header nav { order:3; flex:1 1 100%; justify-content:space-between; font-size:10px; border-top:1px solid #d6e3e9; padding:4px 0; gap:12px; }
 .noryk-home .header nav a { padding-block:9px; }
 .noryk-home .header nav a::after { bottom:4px; }
 .noryk-home .demo-strip { padding:8px 15px; font-size:9px; gap:5px; }
 .noryk-home .demo-strip .text-button { font-size:9px; }
 .pl-wrap { width:calc(100% - 40px); }
 .pl-hero { padding-top:43px; padding-bottom:35px; }
 .pl-home .pl-eyebrow { font-size:8px; letter-spacing:.115em; margin-bottom:23px; }
 .pl-home h1 { font-size:clamp(42px,11.2vw,61px); line-height:1.04; letter-spacing:-.065em; margin-bottom:24px; }
 .pl-hero .pl-intro { font-size:14px; line-height:1.8; max-width:365px; margin-bottom:25px; }
 .pl-hero .pl-actions { gap:19px; }
 .pl-home .pl-button { font-size:11px; gap:25px; min-height:51px; padding:15px 18px; }
 .pl-home .pl-text-link { font-size:11px; gap:9px; }
 .pl-home .pl-hero-note { font-size:9px; margin:13px 0 24px; }
 .pl-hero-signature { font-size:10px; gap:12px; }
 .pl-hero-visual { padding-top:18px; }
 .pl-visual-label { font-size:7px; padding:0 6px 4px; }
 .pl-home .scene-stage { padding:21px 4px 46px; }
 .pl-home .scene-browser { transform:rotate(-1.5deg); }
 .pl-home .scene-bar { min-height:29px; font-size:7px; }
 .pl-home .scene-site-top { padding:13px; font-size:9px; }
 .pl-home .scene-site-top>span { font-size:7px; }
 .pl-home .scene-site-layout { padding:17px 13px; gap:8px; }
 .pl-home .scene-site-layout h2 { font-size:25px; }
 .pl-home .scene-site-layout small { font-size:6px; }
 .pl-home .scene-site-layout p { font-size:9px; }
 .pl-home .scene-screen { min-height:290px; }
 .pl-home .scene-portrait { min-height:167px; }
 .pl-home .scene-fake-button { font-size:7px; }
 .pl-home .scene-service { padding-inline:13px; font-size:8px; }
 .pl-home .scene-service b { font-size:11px; }
 .pl-home .scene-receipt { right:0; width:93%; padding:14px 12px; bottom:16px; gap:10px; }
 .pl-home .scene-receipt b { font-size:10px; }
 .pl-home .scene-receipt>div>span { font-size:8px; }
 .pl-home .scene-controls { margin:3px 0 0; gap:10px; }
 .pl-home .scene-controls button { padding:9px 10px; font-size:9px; min-height:37px; }
 .pl-visual-foot { font-size:8px; margin-top:13px; }
 .pl-orbit { top:10px; }
 .pl-foundation { gap:7px; padding:25px 0; }
 .pl-foundation>p { font-size:12px; margin-bottom:12px; }
 .pl-foundation>div { gap:6px; font-size:10px; }
 .pl-foundation>div .line-icon { width:14px; height:14px; }
 .pl-plus { font-size:13px; }
 .pl-section { padding-block:64px; }
 .pl-section-heading { margin-bottom:27px; }
 .pl-home h2 { font-size:clamp(30px,7.6vw,39px); letter-spacing:-.05em; line-height:1.15; }
 .pl-section-heading>p { font-size:13px; margin-top:21px; }
 .pl-gallery-tabs { display:grid; width:100%; grid-template-columns:1fr 1fr; gap:7px; }
 .pl-gallery-tabs button { font-size:10px; min-height:42px; padding:10px 8px; border:1px solid #d7e3e8; }
 .pl-gallery-controls { margin-bottom:18px; }
 .pl-gallery-grid { gap:22px 13px; }
 .pl-project-featured .pl-project-art { height:360px; }
 .pl-project-art { height:255px; border-radius:8px; }
 .pl-project-brand { top:16px; left:14px; right:14px; font-size:12px; }
 .pl-project-title,.pl-project-dj .pl-project-title,.pl-project-video .pl-project-title { font-size:23px; left:14px; right:12px; bottom:43px; }
 .pl-project-featured .pl-project-title { font-size:40px; left:22px; bottom:45px; }
 .pl-project-featured .pl-project-brand { top:22px; left:22px; font-size:17px; }
 .pl-project-tag { bottom:17px; left:14px; font-size:6px; letter-spacing:.07em; }
 .pl-project-featured .pl-project-tag { left:22px; bottom:22px; font-size:7px; }
 .pl-project-caption { padding-top:12px; gap:6px; }
 .pl-project-caption small { font-size:9px; }
 .pl-project-caption b { font-size:11px; }
 .pl-round-arrow { width:27px; height:27px; flex:none; }
 .pl-round-arrow .line-icon { width:12px; }
 .pl-gallery-grid:has(> :last-child:nth-child(2)) { grid-template-columns:1fr; }
 .pl-gallery-grid:has(> :last-child:nth-child(2)) .pl-project-art { height:350px; }
 .pl-gallery-grid:has(> :last-child:nth-child(2)) .pl-project-title { font-size:37px; left:22px; }
 .pl-home .pl-gallery-note { font-size:12px; margin:25px 0; }
 .pl-all-examples>summary { font-size:11px; }
 .pl-home .pl-disclosure { font-size:9px; }
 .pl-flow { padding-block:65px; scroll-margin-top:120px; }
 .pl-flow-grid { gap:30px; }
 .pl-flow-copy>p:not(.pl-eyebrow) { font-size:13px; }
 .pl-flow-steps button { gap:12px; padding:20px 0; }
 .pl-flow-steps b { font-size:13px; }
 .pl-flow-steps small { font-size:10px; }
 .pl-flow-window { transform:rotate(0); border-radius:9px; }
 .pl-flow-display { width:100%; }
 .pl-flow-content { padding:18px; height:360px; }
 .pl-ui-bar { padding:13px 16px; font-size:9px; }
 .pl-request-image { gap:12px; padding:9px; }
 .pl-request-image>img { height:115px; }
 .pl-request-image h3 { font-size:23px; }
 .pl-request-image small { font-size:6px; }
 .pl-request-image span { font-size:9px; }
 .pl-data-row { font-size:10px; padding-block:12px; }
 .pl-data-row b { font-size:10px; }
 .pl-ui-footer { font-size:7px; padding:13px 18px; }
 .pl-connected { font-size:11px; margin-top:22px; }
 .pl-detail-grid { grid-template-columns:1fr; gap:16px; }
 .pl-detail-image { min-height:400px; }
 .pl-detail-image h3 { font-size:34px; }
 .pl-detail-calendar { padding:27px; }
 .pl-detail-calendar h3 { font-size:33px; }
 .pl-schedule { padding:12px 16px; }
 .pl-schedule b { font-size:11px; }
 .pl-detail-small { display:flex; gap:17px; padding:24px 20px; }
 .pl-detail-small .pl-detail-icon { width:34px; height:34px; border-radius:8px; margin:0; }
 .pl-detail-small .pl-detail-icon .line-icon { width:16px; height:16px; }
 .pl-detail-small h3 { font-size:20px; }
 .pl-detail-small p { font-size:12px; }
 .pl-prices { gap:15px; }
 .pl-price { display:flex; padding:27px; }
 .pl-price-top { margin-bottom:23px; }
 .pl-price h3 { max-width:100%; font-size:22px; }
 .pl-price .pl-price-amount strong { font-size:49px; }
 .pl-price ul { padding:20px 0 0; border-top:1px solid #d5e3e9; }
 .pl-price-featured ul { border-color:#ffffff30; }
 .pl-price li { font-size:12px; }
 .pl-price .pl-price-setup { margin:12px 0 23px; }
 .pl-price-link { width:100%; margin-top:auto; min-height:47px; }
 .pl-home .pl-price-disclosure { font-size:10px; }
 .pl-faq { gap:30px; }
 .pl-faq-list summary { font-size:13px; padding-block:21px; gap:20px; }
 .pl-finale { padding-top:60px; }
 .pl-finale h2 { font-size:clamp(31px,8.4vw,42px); }
 .pl-finale .pl-actions { gap:10px 20px; margin:27px 0 15px; }
 .pl-finale .pl-wrap>p:not(.pl-eyebrow) { font-size:10px; }
 .pl-finale-mark { margin-top:50px; font-size:30vw; }
 .noryk-home .footer { padding:32px 22px; }
 .noryk-home .footer>div { gap:16px; }
}
body.motion-paused .pl-home * { transition:none !important; }
body.motion-paused .pl-home .product-scene { transform:none; }
@media (prefers-reduced-motion:reduce) {
 .pl-home *, .pl-home *::before, .pl-home *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
 .pl-home .product-scene { transform:none; }
 .noryk-home .header * { transition:none !important; }
}
