/*
Theme Name: Our Shanghai — Side Streets
Description: A first landing-page design for Our Shanghai. No paid plugins required.
Version: 1.2.0
Author: Our Shanghai
Text Domain: our-shanghai
*/
:root{--paper:#f7f4e9;--blue:#1745c8;--ink:#17271f;--orange:#ffae46;--line:#d4d6ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #c45600;outline-offset:6px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}.wrap{max-width:1360px;margin:auto;padding:0 5%}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px;border-bottom:1px solid var(--line)}.brand{font-size:24px;line-height:.93;font-weight:900;letter-spacing:-1.3px;text-decoration:none;transform:rotate(-4deg);color:var(--blue)}.brand span{display:block;font-size:13px;letter-spacing:2px;margin-bottom:5px}.links{display:flex;gap:30px;align-items:center;font-size:14px;font-weight:700}.links a{text-decoration:none}.links a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--blue);color:white;padding:15px 25px;border-radius:3px;text-decoration:none;font-size:14px;font-weight:700;min-height:48px}.button:hover{background:#103396}.button.light{background:var(--paper);color:var(--blue)}.button.orange{background:var(--orange);color:var(--ink)}.eyebrow{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:800;margin:0 0 24px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:5%;padding-top:60px;padding-bottom:66px;align-items:center}.hero h1{font-size:clamp(60px,6.8vw,98px);line-height:.97;letter-spacing:-6px;color:var(--blue);margin:0 0 30px;font-weight:900}.hero h1 em{font-family:Georgia,serif;font-weight:400}.intro{max-width:410px;font-size:18px;margin-bottom:28px}.hero .micro{font-size:12px;margin-top:17px}.hero-art{position:relative;padding:16px 8px 30px}.hero-photo{height:520px;border-radius:48% 48% 3px 3px;overflow:hidden;background:#d4dddf}.hero-photo img{object-position:42% center}.sticker{position:absolute;right:-10px;bottom:0;border-radius:50%;width:130px;height:130px;background:var(--orange);display:flex;align-items:center;justify-content:center;text-align:center;font-size:18px;font-weight:900;line-height:1.2;transform:rotate(12deg);border:7px solid var(--paper)}.photo-note{position:absolute;left:20px;top:27px;background:var(--paper);padding:7px 14px;font-size:11px;letter-spacing:1px;transform:rotate(-5deg)}.ticker{background:var(--blue);color:var(--paper);padding:18px 5%;display:flex;justify-content:center;gap:42px;font-size:12px;font-weight:700;letter-spacing:2px}.ticker b{color:var(--orange)}.section{padding-top:90px;padding-bottom:90px}h2{font-size:clamp(38px,4.4vw,64px);letter-spacing:-2.5px;line-height:1.05;margin:0 0 25px;color:var(--blue)}h3{font-size:24px;letter-spacing:-.7px;line-height:1.2;margin:18px 0 12px}.heading-row{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}.heading-row p{max-width:350px;margin:0}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin:30px 0 40px}.fact{padding:22px 15px;border-right:1px solid var(--line)}.fact:first-child{padding-left:0}.fact:last-child{border-right:0}.fact strong{display:block;font-size:25px;color:var(--blue)}.fact span{font-size:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.card figure{height:290px;margin:0;overflow:hidden}.card:nth-child(2) figure{border-radius:100px 100px 0 0}.card p{font-size:15px;margin:0}.number{font-size:11px;letter-spacing:2px;color:var(--blue);display:block;margin-top:20px}.inclusions{margin-top:35px;padding:22px 0;border-top:1px solid var(--line);font-size:14px}.story{background:var(--blue);color:var(--paper)}.story h2{color:var(--paper)}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.story p{max-width:470px}.story .large{font-size:23px;line-height:1.5;margin-top:0}.hand{font-family:Georgia,serif;font-style:italic;font-size:30px;color:var(--orange);transform:rotate(-4deg);display:block;margin-top:30px}.draft-note{border-left:2px solid var(--orange);padding-left:16px;font-size:12px;opacity:.85;margin-top:30px}.fit{border-bottom:1px solid var(--line)}.fit-box{padding:30px;background:#e8eddf}.fit-box.secondary{background:#efece1;margin-top:18px}.fit-box h3{margin-top:0}.fit-box ul{padding-left:20px;font-size:15px;margin-bottom:0}.fit-box li{margin:10px 0}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:45px}.principles article{border-top:2px solid var(--blue);padding-top:15px}.principles p{font-size:15px}.faq{max-width:780px;margin:auto}.faq h2{margin-bottom:35px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-weight:700;cursor:pointer;font-size:17px}details p{font-size:15px;max-width:660px}.contact{background:#e7ebdd;padding:65px 6%;border-radius:4px;text-align:center}.contact p{max-width:520px;margin:20px auto 28px}.contact .actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.contact small{display:block;margin-top:25px;font-size:12px}.footer{padding:35px 0;display:flex;justify-content:space-between;gap:24px;font-size:12px}.footer a{text-underline-offset:4px}.mobile-cta{display:none}@media(min-width:1500px){.hero h1{font-size:106px}}@media(max-width:850px){.links{gap:17px}.links .optional{display:none}.hero{gap:25px}.hero h1{font-size:65px;letter-spacing:-4px}.hero-photo{height:430px}.ticker{gap:18px;font-size:10px;letter-spacing:1px}.cards{gap:15px}.card figure{height:220px}.split{gap:5%}}@media(max-width:600px){.wrap{padding-inline:6%}.nav{padding-block:18px}.brand{font-size:21px}.links>a:not(.button){display:none}.links .button{padding:10px 15px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:40px}.hero h1{font-size:72px;letter-spacing:-4px}.hero .eyebrow{margin-bottom:20px}.hero-art{margin-top:10px}.hero-photo{height:370px}.sticker{right:0;width:110px;height:110px;font-size:16px}.ticker{flex-wrap:wrap;gap:8px 17px;padding-block:16px}.ticker span:last-child{display:none}.section{padding-block:55px}.heading-row,.split{display:block}.heading-row p{margin-top:22px}.facts{grid-template-columns:1fr 1fr}.fact{padding:16px!important}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid var(--line)}.cards,.principles{grid-template-columns:1fr;gap:35px}.card figure{height:310px}.story .large{margin-top:35px}.fit-box{margin-top:30px}.contact{padding:38px 22px}.footer{flex-direction:column;padding-bottom:85px}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--paper);border-top:1px solid var(--line);padding:10px 6%}.mobile-cta .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.journal-links,.journal-footer{display:flex;gap:22px;flex-wrap:wrap;font-size:14px;font-weight:700}.journal-footer{padding:25px 0}.journal-header{padding:26px 5%;display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid #d4d6ca;flex-wrap:wrap}.journal-header nav{display:flex;gap:24px}.journal-header a{text-decoration:none}.journal-brand{font-size:20px;font-weight:800}.journal-main{max-width:960px;padding:64px 24px 90px;margin:auto;min-height:70vh}.journal-main h1{font-size:clamp(36px,6vw,64px);line-height:1.08;letter-spacing:-.035em;margin:18px 0 28px}.journal-main h2{font-size:28px;line-height:1.25;margin:36px 0 14px;letter-spacing:-.02em}.journal-main p{max-width:740px;line-height:1.8}.journal-main a{text-underline-offset:4px}.journal-kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase}.journal-card{border-top:1px solid #d4d6ca;padding:26px 0}.journal-meta{font-size:14px;color:#596158}.journal-main img{height:auto;max-width:100%}.journal-end{border-top:1px solid #d4d6ca;padding-top:25px;margin-top:45px}@media(max-width:800px){.journal-links{gap:14px}.nav{flex-wrap:wrap}.journal-header nav{gap:18px}.journal-main{padding-top:40px}}
