/* KeyHole editorial pass: one visual language across the store. */
:root{--paper:#fafaf7;--ink:#171b1e;--muted:#5e6871;--line:#d9dfe3;--blue:#0868e8;--blue-dark:#054cb1}
.site-header{max-width:1800px;min-height:82px;border-bottom:1px solid #e1e5e7}
.wordmark{font-size:27px;letter-spacing:-.075em}
.wordmark-store{margin-left:11px;padding-left:12px;border-left:1px solid #aeb9c0;color:#45607a;font-size:13px;font-weight:800;letter-spacing:.045em;line-height:1.25}
.desktop-nav{gap:clamp(24px,3vw,54px)}
.desktop-nav a,.account-button{font-size:13px}
.header-cta{border-radius:7px;box-shadow:none}
.hero-stage,body[data-scene=b] .hero-stage{min-height:840px}
.stage-grain{opacity:.5;background-size:24px 24px}
.hero-copy{max-width:870px;padding-top:185px}
.hero h1,.hero-kicker,.hero-strap,.hero-description{width:max-content;max-width:100%}
.hero h1,.hero-kicker,.hero-strap,.hero-description{margin-left:auto;margin-right:auto}
.hero-kicker{font-size:10px;letter-spacing:.22em}
.title-keyhole{font-size:clamp(108px,11vw,190px);letter-spacing:-.085em}
.title-animation{font-size:clamp(112px,11.6vw,196px);letter-spacing:-.065em}
.hero-strap{font-size:clamp(29px,3.3vw,47px);margin-top:34px}
.hero-description{font-size:19px}
.hero-buttons{margin-top:26px}
.button{border-radius:6px;box-shadow:none}
.button-secondary{background:#fff;border-color:#c7ced4}
.hero-blue-rule{left:42%;top:207px;width:min(25vw,400px);height:13px;box-shadow:none;transform:rotate(-27deg)}
.hero-blue-rule:before,.hero-blue-rule:after{top:4px;width:5px;height:5px}
.hero-tag{font-size:10px;border-radius:2px;box-shadow:3px 4px 0 #13191d22}
.hero-tag-one{left:24%;top:162px}.hero-tag-two{right:21%;top:498px}
.panel{border-radius:5px;box-shadow:8px 12px 22px #171d2223}
.panel-transform,.panel-expression,.tool-rail,.cursor-shape{display:none}
.ae-tile{display:grid;left:22%;top:330px;width:70px;height:70px;border:2px solid #9165e8;border-radius:8px;background:#23144a;color:#d6bfff;font-size:34px;font-weight:700;letter-spacing:-.065em;transform:rotate(-12deg);box-shadow:8px 11px 18px #22173535}
.panel-project{left:3%;top:92px;width:254px;height:211px;transform:rotate(-10deg)}
.panel-graph{right:4%;top:94px;width:290px;height:222px;transform:rotate(10deg)}
.panel-timeline{left:3%;bottom:35px;width:385px;height:164px;transform:rotate(-5deg)}
.panel-effects{right:4%;top:auto;bottom:53px;width:248px;height:212px;transform:rotate(8deg)}
.selection-box{right:17%;top:370px;width:80px;height:80px;transform:rotate(13deg)}
.selection-star{font-size:48px}.spark-one{left:24%;top:465px}.spark-two{right:30%;bottom:145px}
body[data-scene=b] .hero-copy{width:min(950px,82%);max-width:none;margin:0 auto;padding:192px 0 0;text-align:left;transform:none}
body[data-scene=b] .hero-kicker{margin-left:3%;transform:rotate(-4deg)}
body[data-scene=b] .hero h1{margin-left:0;margin-right:0}
body[data-scene=b] .title-keyhole{font-size:clamp(112px,11.5vw,196px);margin-left:-1%;transform:rotate(-5deg)}
body[data-scene=b] .title-animation{font-size:clamp(118px,12vw,204px);margin-left:8%;margin-top:-7px;transform:rotate(-5deg)}
body[data-scene=b] .hero-strap{font-size:clamp(30px,3vw,44px);margin:30px 0 8px 10%;transform:none}
body[data-scene=b] .hero-description{margin:0 0 0 10%;transform:none}
body[data-scene=b] .hero-buttons{position:absolute;left:50%;top:698px;z-index:30;margin:0;transform:translateX(-50%);justify-content:center}
body[data-scene=b] .hero-blue-rule{left:35%;top:263px;width:min(29vw,440px);height:13px;transform:rotate(-25deg)}
body[data-scene=b] .hero-tag-one{left:22%;top:170px;transform:rotate(-7deg)}
body[data-scene=b] .hero-tag-two{right:20%;top:480px;transform:rotate(8deg)}
body[data-scene=b] .panel-project{left:3%;top:85px;transform:rotate(-11deg)}
body[data-scene=b] .panel-graph{right:4%;top:87px;transform:rotate(10deg)}
body[data-scene=b] .panel-timeline{left:3%;bottom:34px;transform:rotate(-5deg)}
body[data-scene=b] .panel-effects{right:4%;top:auto;bottom:52px;transform:rotate(8deg)}
body[data-scene=b] .selection-box{right:15%;top:382px;transform:rotate(13deg)}
body[data-scene=b] .ae-tile{left:79%;top:333px;transform:rotate(13deg)}
body[data-scene=b] .spark-one{left:23%;top:460px}
body[data-scene=b] .spark-two{right:31%;bottom:135px}

.demo-block{background:#1c2227;color:#f7f9fa}
.demo-block .section-side>span{color:#99bded}
.demo-block .section-side p{color:#aebbc4}
.demo-content h2{margin-bottom:52px}
.demo-content em{color:#80b5fa}
.ae-panel-gallery{gap:22px;margin:0}
.ae-panel-gallery figure{position:relative}
.ae-panel-gallery a{border:1px solid #4a5761;border-radius:3px;background:#13181c;box-shadow:13px 14px 0 #0d111466}
.ae-panel-gallery img{height:min(48vw,590px);min-height:390px;object-fit:contain;background:#171c21}
.ae-panel-gallery figcaption{color:#b5c6d3;font-weight:800;letter-spacing:.12em;margin-top:17px}
.demo-caption{color:#b6c3cc;font-size:13px;margin-top:32px}
.toolkit-block{background:#fbfbf8}
.toolkit-content h2{margin-bottom:65px}
.toolkit-row{grid-template-columns:56px minmax(220px,1fr) minmax(180px,.7fr) 26px;border-color:#bbc4cb;padding:36px 0}
.toolkit-row h3{font-size:clamp(32px,3.3vw,48px)}
.toolkit-row>span{color:var(--blue);font-weight:900}
.toolkit-row b{font-size:27px}
.process-block{background:#111a21}
.process-grid{gap:50px}
.process-note{border-top:2px solid #7c91a5}
.process-index{display:inline-grid;place-items:center;width:30px;height:30px;background:#dceaff;color:#0b4caa;font-size:12px}
.process-note h3{margin-top:22px}
.process-strip{border-top:1px solid #617589;padding-top:23px}
.editorial-intro{max-width:1800px}
.editorial-body{grid-template-columns:.86fr 1.14fr;gap:6%}
.intro-copy h2{font-size:clamp(78px,8vw,128px)}
.intro-copy p{max-width:460px}
.intro-art{height:560px;overflow:visible}
.intro-art-grid{inset:3%;background-color:#f8f9f7;background-image:radial-gradient(#bfc9cf 1px,transparent 1px);background-size:23px 23px;border:1px solid #d2dbe0;transform:rotate(3deg)}
.intro-art .intro-art-image{position:absolute;z-index:1;left:-5%;top:-3%;width:110%;height:106%;object-fit:contain;filter:none}
.intro-art-word{position:absolute;z-index:2;left:22%;top:34%;font-size:clamp(55px,5.5vw,88px);font-weight:800;letter-spacing:-.11em;line-height:.8;white-space:nowrap;transform:rotate(-5deg)}
.intro-art-word i{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.08em}
.intro-art-selection{position:absolute;z-index:3;left:24%;top:28%;width:68%;height:24%;border:3px solid var(--blue);transform:rotate(-8deg);pointer-events:none}
.intro-art-selection b{position:absolute;width:13px;height:13px;border:2px solid var(--blue);background:#fff;border-radius:50%}
.intro-art-selection b:nth-child(1){left:-8px;top:-8px}.intro-art-selection b:nth-child(2){right:-8px;top:-8px}.intro-art-selection b:nth-child(3){left:-8px;bottom:-8px}.intro-art-selection b:nth-child(4){right:-8px;bottom:-8px}
.annotation{font-size:11px;letter-spacing:.14em;font-weight:900;background:#fff;border:1px solid #161b1e;box-shadow:4px 5px 0 #171c20;transform:rotate(-5deg)}
.annotation-top{left:7%;top:9%}.annotation-bottom{right:0;bottom:14%;background:#0a65dd;color:#fff;border-color:#0a65dd;transform:rotate(6deg)}
.intro-cross{right:10%;top:7%;font-size:65px;color:var(--blue)}
.included-block{background:#eef3f8}
.included-list{border-color:#b9c8d5}.included-list>div{border-color:#b9c8d5}
.pricing-block{background:#fbfbf8;border-top:1px solid #dfe4e8}
.pricing-ticket{border:2px solid #172027;border-radius:0;box-shadow:14px 16px 0 #c8ddf9;transform:rotate(1.5deg)}
.ticket-top{color:#252d35}.ticket-price strong{color:var(--blue)}
.delivery-block{background:#fff}
.delivery-block ol{border-color:#c4d0db}.delivery-block li{border-color:#c4d0db}
.about-strip{background:#095fd9;color:#fff}
.about-strip em{color:#d9eaff}.about-strip p{color:#e6f0ff}.about-strip .text-link{color:#fff}.about-asterisk{color:#d9eaff}
.faq-block{background:#f7f9f8}
.closing-block{background:#171e24;color:#fff}
.closing-block>span{color:#a5b5c4}.closing-block em{color:#91c0ff}
.closing-block .button-secondary{color:#172027}
.store-footer{background:#fafaf7}

/* Product, support and account routes use the same editorial grid and type. */
.inner-hero{min-height:400px;background:#f7f9f8;border-bottom:1px solid #d9e0e5}
.inner-hero-grid{background-size:23px 23px;opacity:.42}
.inner-hero h1{font-size:clamp(72px,8.6vw,128px);margin-top:76px}
.inner-hero>p{color:#56616a}
.inner-hero-mark{color:#0c62d6;font-size:116px;right:10%;top:29%}
.catalog-entry,.detail-grid,.detail-section,.inner-editorial,.inner-note,.support-list,.account-preview{max-width:1640px}
.catalog-art{background-color:#e8f1fa;background-image:radial-gradient(#b9cbd7 1px,transparent 1px);background-size:23px 23px;border:1px solid #c7d7e1}
.catalog-folder{border-radius:5px;background:#2b91d6;box-shadow:12px 15px 0 #0759ad,20px 30px 40px #1d477733}
.catalog-folder:before{border-radius:5px 5px 0 0;background:#2b91d6}
.catalog-selection{border-color:#075fe2}.catalog-selection:before,.catalog-selection:after{border-color:#075fe2}
.detail-visual{background:#181f25;background-image:radial-gradient(#8aa9c022 1px,transparent 1px);background-size:23px 23px;border:1px solid #10171c}
.detail-visual>strong{font-size:clamp(58px,6.2vw,103px)}
.detail-cross{color:#75aff8}
.detail-purchase{border-top:2px solid var(--ink);padding-top:20px}
.detail-purchase h2{font-size:clamp(78px,7vw,110px);color:var(--blue)}
.detail-section{border-color:#bec9d0}
.detail-facts>div{border-color:#c4cfd6}
.support-list>a{border-color:#bdc9d1}.support-list>a:last-child{border-color:#bdc9d1}
.support-list>a:hover strong{color:var(--blue)}
.account-icon{border-radius:5px;background:#0b65db;box-shadow:8px 9px 0 #cadff9}
.inner-note{border-color:#c6d0d8}

@media(max-width:1200px){
  .panel-project{left:-30px}.panel-graph{right:-30px}.panel-timeline{left:-20px}.panel-effects{right:-20px}
  body[data-scene=b] .hero-copy{width:90%;padding-top:208px}
  body[data-scene=b] .title-keyhole{font-size:clamp(110px,12vw,168px)}
  body[data-scene=b] .title-animation{font-size:clamp(116px,12.5vw,176px)}
}
@media(max-width:760px){
  .site-header{min-height:68px}.hero-stage,body[data-scene=b] .hero-stage{min-height:710px}
  .wordmark-store{margin-left:7px;padding-left:8px;font-size:10px}
  .hero-copy{padding:183px 18px 0;max-width:390px}
  .title-keyhole{font-size:clamp(72px,22vw,103px)}
  .title-animation{font-size:clamp(76px,23vw,108px)}
  .hero-strap{font-size:clamp(25px,7vw,32px);margin-top:32px}
  .hero-description{font-size:14px}
  .hero-buttons{margin-top:25px}
  .panel-project{left:-82px;top:21px;width:215px;height:176px;transform:rotate(-11deg)}
  .panel-graph{right:-96px;top:18px;width:225px;height:172px;transform:rotate(12deg)}
  .panel-timeline{left:-100px;bottom:-91px;width:308px;height:148px;transform:rotate(-8deg)}
  .panel-effects{right:-107px;bottom:-50px;width:210px;height:182px;transform:rotate(8deg)}
  .hero-blue-rule{left:37%;top:252px;width:158px;height:9px}
  .hero-blue-rule:before,.hero-blue-rule:after{top:2px}
  .hero-tag-one{left:8%;top:130px}.hero-tag-two{right:8%;top:501px}
  .selection-box{right:8%;top:490px;width:55px;height:55px}.selection-star{font-size:34px}
  .ae-tile{left:76%;top:125px;width:50px;height:50px;border-width:2px;font-size:25px}
  body[data-scene=b] .hero-copy{width:100%;padding:193px 18px 0}
  body[data-scene=b] .hero-kicker{margin-left:4%;font-size:8px}
  body[data-scene=b] .title-keyhole{font-size:clamp(77px,23vw,107px);margin-left:-2%;transform:rotate(-5deg)}
  body[data-scene=b] .title-animation{font-size:clamp(80px,23.5vw,111px);margin-left:5%;margin-top:0;transform:rotate(-5deg)}
  body[data-scene=b] .hero-strap{font-size:clamp(25px,7vw,33px);margin:35px 0 8px 4%}
  body[data-scene=b] .hero-description{margin:0 0 0 4%}
  body[data-scene=b] .hero-buttons{top:538px;gap:7px}
  body[data-scene=b] .hero-blue-rule{left:27%;top:279px;width:180px;height:9px}
  body[data-scene=b] .hero-tag-one{left:9%;top:146px}
  body[data-scene=b] .hero-tag-two{right:7%;top:478px}
  body[data-scene=b] .panel-project{left:-82px;top:21px}
  body[data-scene=b] .panel-graph{right:-96px;top:18px}
  body[data-scene=b] .panel-timeline{left:-100px;bottom:-91px}
  body[data-scene=b] .panel-effects{right:-107px;top:auto;bottom:-50px}
  body[data-scene=b] .selection-box{right:8%;top:458px}
  body[data-scene=b] .ae-tile{left:77%;top:190px;transform:rotate(13deg)}
  .ae-panel-gallery{gap:10px}
  .ae-panel-gallery img{height:275px;min-height:0}
  .ae-panel-gallery figcaption{font-size:8px;letter-spacing:.04em}
  .intro-art{height:330px}
  .intro-art-word{top:37%;left:21%;font-size:clamp(43px,11vw,60px)}
  .intro-art-selection{top:32%;left:25%;height:23%}
  .intro-cross{font-size:45px}
  .pricing-ticket{box-shadow:9px 11px 0 #c8ddf9}
  .inner-hero{min-height:345px}
  .inner-hero h1{font-size:clamp(59px,12vw,90px);margin-top:66px}
  .inner-hero-mark{font-size:63px;right:6%;top:26%}
  .catalog-art{height:320px}
  .catalog-folder{left:18%;width:65%}
  .detail-visual{height:340px}
  .detail-visual>strong{font-size:clamp(52px,12vw,65px)}
  .detail-purchase{margin-top:55px}
  .detail-purchase h2{font-size:82px}
}
@media(max-width:390px){body[data-scene=b] .hero-buttons{top:543px}.intro-art-word{font-size:62px}}

.price-offer{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;letter-spacing:normal}
.price-offer .price-was{font-size:.55em;font-weight:500;opacity:.65;text-decoration-thickness:1px}
.price-offer .price-now{font:inherit;font-weight:800;letter-spacing:-.06em;color:inherit}
.price-offer .price-discount{padding:5px 8px;border-radius:999px;background:var(--blue);color:#fff;font-size:11px;font-weight:800;line-height:1;letter-spacing:0}
.ticket-price{flex-wrap:wrap;gap:12px}
.ticket-price .price-offer{font-size:68px;letter-spacing:normal}
.ticket-price .price-now{color:var(--blue)}
.catalog-meta{flex-wrap:wrap;gap:12px 25px}
.catalog-meta>.price-offer{font-size:39px;color:var(--ink)}
.demo-offer .price-offer,.closing-block .price-offer{font-size:16px;vertical-align:middle}
.demo-offer .price-was,.closing-block .price-was,.detail-facts .price-was{font-size:.85em}
@media(max-width:390px){.ticket-price .price-offer{font-size:56px}}
