/* Responsive rules shared by Android Chrome and iOS Safari. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-width:0}img,iframe{max-width:100%}button,a,input,textarea,select{touch-action:manipulation}dialog{max-width:calc(100vw - 24px);max-height:92vh;max-height:92dvh}dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.contacts .contact-icon{background:#e7edf6;border-color:#ccd6e4;color:#102340}#open-map small{color:#2257df}
@media(max-width:850px){
 body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
 input,textarea,select{font-size:16px!important}button,.button,.btn,.upload-button,summary{min-height:44px}input[type=checkbox]{width:20px;height:20px;min-height:20px;flex:none}input[type=range]{min-height:35px}
 .marketing-site header{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;padding:14px 5%;align-items:center}.marketing-site .original-brand{padding:3px 7px 7px 0}.marketing-site .original-brand img{width:78px;height:78px;padding:4px;border-radius:10px}.marketing-site nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px 10px;align-items:center;min-width:0}.marketing-site nav>a:not(.btn){display:flex;align-items:center;justify-content:center;font-size:12px;min-height:40px;text-align:center}.marketing-site nav .btn{grid-column:1/-1;padding:10px 12px;min-height:42px;font-size:12px}.marketing-site .service-menu summary{font-size:12px;line-height:1.3;padding:8px 2px}.marketing-site .service-menu-panel{width:90vw;right:5%;padding:16px}.marketing-site #service-menu-list{max-height:50vh;max-height:50dvh}.marketing-site #service-menu-list a{min-height:44px;font-size:14px}.marketing-site .hero{padding:32px 5%;gap:25px}.marketing-site h1{font-size:clamp(40px,10vw,64px);letter-spacing:-2px}.marketing-site section{padding-left:5%;padding-right:5%}.marketing-site .hero-actions{flex-wrap:wrap;gap:14px}.marketing-site .hero-actions .btn{padding:15px;font-size:13px}.marketing-site .logo-stage{height:360px}.marketing-site .logo-plaque{width:min(70%,270px)}.marketing-site .logo-stage-label{left:14px;font-size:7px;letter-spacing:.8px}.marketing-site .logo-stage>button{right:10px;font-size:10px}.marketing-site .motion-banner{margin:30px 5% 0}.marketing-site .motion-copy{padding:22px}.marketing-site .banner-controls{gap:8px}.marketing-site .banner-controls button{min-width:44px;min-height:44px}.marketing-site .form{min-width:0;padding:20px}.marketing-site .contact>div,.marketing-site .form,.marketing-site .catalog-tools{min-width:0}.marketing-site .contacts{font-size:13px}.marketing-site .contacts>a{min-height:50px;margin-bottom:8px}.marketing-site .contacts span{min-width:0}.marketing-site .filter{font-size:12px;padding:10px 12px}.marketing-site .catalog-tools input{max-width:100%}.marketing-site footer{padding-bottom:calc(85px + env(safe-area-inset-bottom))}
 .studio-site header{padding:15px 5%;gap:14px}.studio-site header strong{font-size:13px}.studio-site main{padding:22px 4% calc(90px + env(safe-area-inset-bottom))}.studio-site .intro{align-items:flex-start;gap:12px}.studio-site h1{font-size:29px;line-height:1.1}.studio-site .intro img{width:54px;height:82px}.studio-site .panel{padding:16px}.studio-site .setup-grid{grid-template-columns:1fr}.studio-site .setup-grid>div,.studio-site .properties,.studio-site .left-tools,.studio-site .work-area{min-width:0}.studio-site .section-title{flex-wrap:wrap}.studio-site .pill{max-width:100%;line-height:1.5}.studio-site .editor-toolbar{top:0;padding:9px;z-index:25}.studio-site .editor-toolbar .toolgroup{gap:6px}.studio-site .editor-toolbar button,.studio-site .upload-button{font-size:11px;padding:9px}.studio-site .workspace-views{grid-template-columns:1fr}.studio-site .work-area{padding:10px;position:static}.studio-site .product-preview #product-stage svg{max-height:300px}.studio-site .flat-preview .canvas-scroll{max-height:45vh;min-height:190px}.studio-site .canvas-quicktools{gap:6px;position:static}.studio-site .canvas-quicktools #quick-text{flex-wrap:wrap}.studio-site .canvas-quicktools #quick-font{max-width:135px}.studio-site .canvas-quicktools #quick-size{width:64px}.studio-site .properties #element-controls{display:block}.studio-site .left-tools{grid-template-columns:1fr 1fr}.studio-site .approval{grid-template-columns:1fr}.studio-site .export-actions{min-width:0}.studio-site .magic-views{grid-template-columns:1fr}.studio-site .magic-art{height:260px;max-height:40vh}.studio-site .magic-product svg{max-height:300px}.studio-site #status{bottom:calc(8px + env(safe-area-inset-bottom));max-width:100%;padding:12px;margin-right:50px;font-size:12px}.studio-site .magic-panel{grid-template-columns:1fr;gap:8px}.studio-site .magic-character img{height:100px;width:auto}.studio-site .magic-character span{right:calc(50% - 70px)}.studio-site .magic-panel select{max-width:100%}.studio-site .magic-panel .primary{width:100%}.studio-site .workshop-footer{flex-wrap:wrap;gap:10px}
 .mega-guide{bottom:calc(8px + env(safe-area-inset-bottom));right:8px;max-width:calc(100vw - 20px)}.mega-guide.on-form{left:auto;right:8px}.mega-guide.is-minimized{width:52px}.mega-guide.is-minimized .mega-actor{width:52px;height:52px}.mega-guide.is-minimized .mega-footer{min-height:52px}.mega-close,.mega-pause,.mega-actions a{min-height:40px;min-width:40px}.mega-guide .mega-close{position:static;float:right;padding:4px}.mega-guide .mega-bubble{padding:12px}.mega-bubble strong{display:block;padding-top:10px}.mega-bubble:after{display:none}
 .directions-dialog{padding:16px}.directions-dialog iframe{height:240px}.directions-dialog .btn{width:100%;font-size:14px}.mockup-dialog .workshop-head{padding:15px}.mockup-dialog .workshop-head strong{font-size:16px}
}
@media(max-width:360px){.marketing-site header{grid-template-columns:68px minmax(0,1fr);gap:8px}.marketing-site .original-brand img{width:65px;height:65px}.marketing-site nav{gap:4px}.marketing-site nav>a:not(.btn),.marketing-site .service-menu summary{font-size:11px}.marketing-site .hero-actions{flex-direction:column;align-items:stretch}.marketing-site .text-link{text-align:center;align-self:center}.marketing-site h1{font-size:39px}.marketing-site .mascot-intro{grid-template-columns:65px 1fr;gap:12px}.marketing-site .mascot-intro>img{width:65px}.marketing-site .mascot-intro h2{font-size:23px}.studio-site .template-grid{grid-template-columns:1fr}.studio-site .template-art{height:200px}}
@media(max-height:500px) and (orientation:landscape){.studio-site .editor-toolbar{position:static}.studio-site .work-area{position:static}.studio-site .flat-preview .canvas-scroll{max-height:75vh}dialog{max-height:94vh;max-height:94dvh}.mega-guide.is-minimized .mega-actor{height:44px;width:44px}}
@media(max-width:850px){.studio-site .editor-toolbar{position:static}.studio-site .work-area .preview-kicker{font-size:10px}.studio-site .product-preview h3{font-size:12px}.studio-site .product-preview .micro{font-size:11px}}
/* High-contrast navigation actions on desktop and mobile. */
.marketing-site header nav{gap:12px}.marketing-site header nav>a,.marketing-site header nav>.service-menu>summary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 18px;border:1px solid #2257df;border-radius:10px;background:#2257df;color:#fff;font-size:13px;font-weight:700;line-height:1.3;box-shadow:0 3px 0 #153b9f,0 5px 12px #2257df20;transition:background .18s,transform .18s,box-shadow .18s}.marketing-site header nav>a:hover,.marketing-site header nav>.service-menu>summary:hover{background:#163fae;transform:translateY(-2px);box-shadow:0 5px 0 #102d7f,0 8px 18px #2257df30}.marketing-site header nav>a:active,.marketing-site header nav>.service-menu>summary:active{transform:translateY(2px);box-shadow:0 1px 0 #153b9f}.marketing-site header nav>.service-menu[open]>summary{background:#d7f567;border-color:#bdde4a;color:#102340;box-shadow:0 3px 0 #9cba30}.marketing-site header nav>a:focus-visible,.marketing-site header nav>.service-menu>summary:focus-visible{outline:3px solid #19a9cb;outline-offset:5px}@media(max-width:850px){.marketing-site header nav{gap:9px 8px}.marketing-site header nav>a:not(.btn),.marketing-site header nav>.service-menu>summary{display:flex;min-height:46px;padding:9px 6px;font-size:11px;width:100%;border-radius:8px}.marketing-site header nav>.service-menu{min-width:0}.marketing-site header nav>.service-menu>summary{gap:3px}}@media(prefers-reduced-motion:reduce){.marketing-site header nav>a,.marketing-site header nav>.service-menu>summary{transition:none;transform:none!important}}
