/* Second edition: a bright print studio with a navy contact panel. */
:root{--blue:#0755df;--ink:#14243d;--muted:#5b6b80;--line:#dce5ef;--paper:#f2f6fb}body{-webkit-font-smoothing:antialiased}.shell{width:min(1240px,calc(100% - 80px))}header{background:#ffffffed;backdrop-filter:blur(16px);border-color:#e8edf4}.nav{height:88px}.brand img{width:48px;height:48px}.brand small{font-size:.7rem;letter-spacing:.1em}nav a{position:relative;padding:8px 0}nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--blue);transition:width .25s}nav a:hover:after{width:100%}.language{border:1px solid var(--line);border-radius:30px;padding:8px 15px;font-size:.875rem}.language:hover{border-color:var(--blue)}.button{border-radius:9px;min-height:54px;line-height:1.4;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{box-shadow:0 8px 24px #05296322}.dark,.white{background:var(--blue);color:#fff}.dark:hover,.white:hover{background:#062d78}.text-link{border-color:#afc9f1}.text-link.light{color:var(--blue)}
.hero{width:min(1320px,calc(100% - 48px));margin:24px auto 0;grid-template-columns:1.02fr 1fr;gap:34px;padding:40px 24px 34px 40px;min-height:0;background:linear-gradient(125deg,#f3f8ff,#edf4fd);border:1px solid #e4ecf7;border-radius:26px}.hero-copy{padding:24px 8px 0;background:transparent;color:var(--ink);align-items:flex-start;min-width:0}.hero .eyebrow{display:flex;align-items:center;gap:10px;color:var(--blue);font-size:.72rem;letter-spacing:.12em}.hero .eyebrow:before{content:'';width:22px;height:2px;background:var(--blue)}.hero h1{font-size:clamp(3.2rem,4.65vw,4.65rem);line-height:1.1;letter-spacing:-.055em}.hero h1 em{font-style:normal;color:var(--blue)}.hero-intro{font-size:1.07rem;line-height:1.85;color:var(--muted);margin-top:25px}.actions{gap:24px;margin-top:30px}.actions .text-link{font-size:.92rem}.hero-bottom{width:100%;border-color:#cedcf0;padding-top:24px;margin-top:44px;color:#062d78;font-size:.9rem;font-weight:600}.print-marks i{width:16px;height:16px}.hero-photo{min-height:540px;border-radius:17px}.hero-photo img{object-position:56% center}.hero-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#061b3fa8);pointer-events:none}.hero-photo figcaption{left:24px;right:24px;bottom:24px;z-index:1;background:transparent;font-size:.8rem;letter-spacing:.06em;border-top:1px solid #ffffff88;padding:16px 0 0}.hero-photo figcaption strong{display:block;font:700 1.5rem/1.3 Manrope,sans-serif;letter-spacing:-.03em;margin-bottom:6px}
h2{font-size:clamp(2.4rem,3.5vw,3.35rem)}.section-heading,.shop-intro{gap:80px;margin-bottom:45px}.section-heading>p,.shop-intro>div>p:not(.eyebrow){font-size:1.04rem;line-height:1.9}.services{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0}.service{border:1px solid var(--line);border-radius:16px;padding:29px;background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s}.service:hover{transform:translateY(-5px);box-shadow:0 14px 40px #1638730c;border-color:#9dc0f1;background:#fff}.service-top{margin-bottom:26px}.service-top svg{width:54px;height:54px;padding:12px;border-radius:13px;background:#edf4ff;stroke-width:1.5}.service-top>span{font-size:.85rem;color:#697a91}.service h3{font-size:1.37rem}.service p{font-size:1rem;line-height:1.8}.service>small{font-size:.875rem;line-height:1.75;color:#455d7c}.service>a{gap:12px;margin-top:23px;font-size:.9rem}.service>a>span{display:grid;place-items:center;background:var(--paper);width:30px;height:30px;border-radius:50%;transition:background .2s,color .2s}.service:hover>a>span{background:var(--blue);color:#fff}
.shop-section{border-block:1px solid #e7edf5}.gallery{grid-template-columns:1.25fr 1fr;gap:26px;align-items:start}.gallery figure{min-width:0}.gallery img{height:425px;border-radius:16px;border:1px solid #dce5ef}.gallery figure:last-child{padding-top:55px}.gallery figure:last-child img{height:425px}.gallery figcaption{gap:13px;align-items:center;padding-top:17px;font-size:.92rem;font-weight:500}.gallery figcaption>span{font-size:.75rem;border:1px solid #b8cbe6;padding:2px 7px;border-radius:5px}
.contact{background:#092452}.contact-grid{grid-template-columns:.95fr 1.05fr;align-items:center;gap:90px}.contact .eyebrow{color:#9ec9ff}.contact h2{font-size:clamp(2.75rem,4.1vw,4.1rem)}.contact-grid>div>p:not(.eyebrow){color:#c6d5ec;max-width:410px;line-height:1.9}.contact .white{color:#083c92;background:#fff}.contact .white:hover{background:#e3efff}.contact-note{color:#bfd1eb;font-size:.875rem;line-height:1.8;margin-top:18px;max-width:380px}.contact-details{background:#fff;color:var(--ink);padding:14px 32px;border-radius:20px;box-shadow:0 20px 60px #03132b2b;min-width:0}.contact-details>a,.contact-details>div{padding:23px 0;border-top:0;border-bottom:1px solid var(--line)}.contact-details>div:last-child{border:0}.contact-details small{font-size:.875rem;color:var(--muted);margin-bottom:7px}.contact-details span{gap:12px;font-size:1.18rem;font-weight:600;line-height:1.6}.contact-details>a:hover{color:var(--blue)}.contact-details p{color:var(--muted);font-size:.92rem;line-height:1.8}.contact-details .text-link{font-size:.9rem;margin-top:10px;color:var(--blue)}.contact-details .text-link span{font-size:1rem}footer strong{font:800 1.35rem Manrope,sans-serif;letter-spacing:-.04em}footer div span,footer a,footer>small{font-size:.875rem}footer div span{margin-top:5px}
html[lang=zh-Hans] h1{font-size:clamp(2.8rem,3.75vw,3.8rem);line-height:1.35;letter-spacing:-.035em}html[lang=zh-Hans] .hero-intro{line-height:2}
@media(max-width:1080px){.shell{width:calc(100% - 56px)}.nav{gap:20px}nav{gap:20px}.nav-actions{gap:12px}.nav-quote{display:none}.hero{gap:24px;padding:28px;grid-template-columns:1.05fr 1fr}.hero-copy{padding:16px 0 0}.hero h1{font-size:3.3rem}.hero-photo{min-height:520px}.section-heading,.shop-intro{gap:40px}.service{padding:24px}.contact-grid{gap:45px}.gallery img,.gallery figure:last-child img{height:360px}}
@media(max-width:760px){html{scroll-padding-top:115px}.shell{width:calc(100% - 40px)}.nav{height:auto;min-height:102px;flex-wrap:wrap;gap:8px;padding:12px 0}.brand img{width:43px;height:43px}.brand span{font-size:1.15rem}.brand small{font-size:.625rem}.nav-actions{margin-left:auto}.language{font-size:.875rem;padding:7px 13px}nav{order:3;width:100%;justify-content:space-between;font-size:.875rem;gap:10px}nav a{padding:3px 0}.hero{width:calc(100% - 24px);margin-top:12px;padding:30px 22px 20px;grid-template-columns:1fr;gap:28px;border-radius:20px}.hero-copy{padding:0}.hero .eyebrow{font-size:.7rem;margin-bottom:22px;letter-spacing:.075em}.hero h1{font-size:clamp(2.65rem,8.7vw,3.8rem);letter-spacing:-.05em}.hero-intro{font-size:1rem;line-height:1.85;margin-top:20px}.actions{gap:16px;margin-top:25px}.button{padding:14px 19px;gap:18px}.actions .text-link{font-size:.875rem;gap:12px}.hero-bottom{margin-top:30px;padding-top:20px;font-size:.875rem}.hero-photo{height:auto;min-height:330px;border-radius:12px}.hero-photo figcaption{left:18px;right:18px;bottom:18px;font-size:.7rem}.hero-photo figcaption strong{font-size:1.2rem}.section{padding-block:65px}.section-heading,.shop-intro{grid-template-columns:1fr;gap:23px;margin-bottom:32px}.eyebrow{font-size:.75rem;margin-bottom:18px}h2{font-size:2.45rem}.section-heading>p,.shop-intro>div>p:not(.eyebrow){font-size:1rem}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service{padding:23px 19px}.service h3{font-size:1.25rem}.service-top{margin-bottom:22px}.gallery{grid-template-columns:1fr;gap:28px}.gallery figure:last-child{padding-top:0}.gallery img{height:310px}.gallery figure:last-child img{height:380px}.gallery figcaption{font-size:.875rem}.contact{padding-block:65px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:3rem}.contact-details{padding:7px 24px;border-radius:16px}.contact-details span{font-size:1.1rem}.contact-details>a,.contact-details>div{padding:21px 0}footer{padding-block:28px;gap:20px}footer>small{width:100%}html[lang=zh-Hans] h1{font-size:clamp(2rem,7.6vw,3rem);line-height:1.4}}
@media(max-width:480px){.services{grid-template-columns:1fr}.service{padding:25px}.service-top{margin-bottom:20px}.service h3{font-size:1.4rem}.service p{margin-bottom:18px}.service>a{margin-top:20px}.hero-photo{min-height:300px}.hero .eyebrow{font-size:.65rem}.hero .eyebrow:before{width:15px}.contact-details{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Service collection: printed category headers, compact tags and clear actions. */
#services .services{gap:26px}
#services .service{padding:0;overflow:hidden;border:1px solid #d9e4f2;border-radius:20px;box-shadow:0 5px 18px #142f5706;background:#fff}
#services .service:hover,#services .service:focus-within{transform:translateY(-5px);border-color:#83afea;box-shadow:0 16px 38px #173d7b13}
#services .service-top{position:relative;overflow:hidden;margin:0 0 27px;padding:26px 28px;min-height:132px;background:#edf5ff;border-bottom:1px solid #e0eafa}
#services .service-top:after{content:'';position:absolute;left:28px;bottom:0;height:3px;width:46px;background:var(--blue)}
#services .service-top svg{width:68px;height:68px;background:#fff;border:1px solid #d6e5f9;border-radius:17px;padding:16px;box-shadow:0 5px 15px #204a8510;color:#0755df;position:relative;z-index:1}
#services .service-top>span{font-size:3.5rem;line-height:1;font-weight:800;letter-spacing:-.07em;color:#c4d8f4;align-self:center;user-select:none}
#services .service:nth-child(2) .service-top,#services .service:nth-child(6) .service-top{background:#e9f5f9}
#services .service:nth-child(2) .service-top svg,#services .service:nth-child(6) .service-top svg{color:#08729b;border-color:#cce5ee}
#services .service:nth-child(2) .service-top>span,#services .service:nth-child(6) .service-top>span{color:#b9dce8}
#services .service h3{font-size:1.45rem;letter-spacing:-.035em;margin:0 28px 13px;line-height:1.3}
#services .service p{margin:0 28px 23px;color:#607089;font-size:1rem;line-height:1.85}
.service-tags{display:flex;flex-wrap:wrap;list-style:none;gap:7px;margin:auto 28px 26px;padding:0}
.service-tags li{font-size:.875rem;line-height:1.45;padding:6px 10px;background:#f3f6fa;color:#48617d;border:1px solid #e7edf5;border-radius:6px}
#services .service>a{margin:0 28px 25px;padding:12px 15px;border:1px solid #d6e5fa;background:#f5f9ff;border-radius:9px;min-height:48px;font-size:.9rem;transition:background .2s,color .2s,border-color .2s}
#services .service>a>span{background:transparent;width:auto;height:auto;font-size:1.25rem;color:inherit;transition:transform .2s}
#services .service>a:hover,#services .service>a:focus-visible{background:var(--blue);border-color:var(--blue);color:white}
#services .service>a:hover>span{transform:translate(2px,-2px)}
@media(max-width:1000px) and (min-width:761px){#services .services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#services .services{gap:18px}#services .service-top{padding:22px;min-height:118px;margin-bottom:23px}#services .service-top svg{height:58px;width:58px;padding:13px;border-radius:14px}#services .service-top>span{font-size:3rem}#services .service h3{font-size:1.3rem;margin-inline:22px}#services .service p{margin-inline:22px}.service-tags{margin-inline:22px;gap:6px}#services .service>a{margin-inline:22px;padding-inline:12px}}
@media(max-width:480px){#services .services{gap:22px}#services .service-top{min-height:112px;padding:22px 25px}#services .service h3{font-size:1.5rem;margin-inline:25px}#services .service p,.service-tags{margin-inline:25px}#services .service>a{margin-inline:25px;font-size:.95rem}}
@media(prefers-reduced-motion:reduce){#services .service:hover,#services .service:focus-within,#services .service>a:hover>span{transform:none}}
