@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Italiana&display=swap');
:root{--paper:#f5f1ed;--ink:#211d1e;--pink:#e8bfc6;--muted:#655b5d;--line:#d8d0cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,a,select,textarea,summary{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #b42b54}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}.announcement{text-align:center;background:var(--ink);color:var(--paper);padding:9px 15px;font-size:10px;letter-spacing:2px}.announcement span{margin:0 20px;color:var(--pink)}header{display:flex;justify-content:space-between;align-items:center;padding:24px 5%;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}.brand{font-size:23px;font-weight:500;letter-spacing:2px;line-height:1.2;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:2.3px;margin-top:8px}nav{display:flex;align-items:center;gap:35px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:17px 23px;font-size:13px;transition:.2s}.button:hover{background:#47383d}.small{padding:11px 20px}.menu{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:670px}.hero-copy{padding:70px 9% 32px 10%}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:600;margin:0 0 24px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Italiana',Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-2px}h1{font-size:clamp(60px,6.6vw,100px);margin-bottom:30px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;font-size:.88em;color:#8d3c52}h2{font-size:clamp(44px,4.8vw,72px);margin-bottom:28px}.hero-copy>p:not(.eyebrow){max-width:390px;color:var(--muted);font-size:15px}.actions{display:flex;align-items:center;gap:25px;margin:35px 0 65px}.text-link{font-size:13px;border-bottom:1px solid;padding-bottom:5px;display:inline-block}.hero-foot{font-size:9px;letter-spacing:1.5px;display:flex;gap:25px;color:var(--muted)}.hero-art{position:relative;overflow:hidden;background:#27292b;min-height:650px}.hero-art>img{height:100%;position:absolute;object-position:50% 35%}.hero-art:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0009)}.photo-label{position:absolute;bottom:36px;left:35px;z-index:1;color:white}.photo-label>span{font-size:9px;letter-spacing:2px}.photo-label strong{display:block;font-family:Georgia,serif;font-size:35px;font-weight:400}.photo-label a{font-size:12px}.seal{position:absolute;right:25px;top:28px;display:grid;place-content:center;border:1px solid #ffffff99;border-radius:50%;width:104px;height:104px;color:white;line-height:1.4;text-align:center;font-size:12px;letter-spacing:2px;transform:rotate(12deg)}.ribbon{background:var(--pink);padding:21px;text-align:center;letter-spacing:4px;font-size:12px}.ribbon span{margin:0 35px}.section{padding:100px 7%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:45px}.section-heading>p{max-width:350px;color:var(--muted)}.section-heading h2{margin-bottom:0}.service-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:8%;border-top:1px solid var(--line);padding-top:35px}.service-nav button{width:100%;display:flex;gap:20px;align-items:center;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:22px 12px;font-size:19px}.service-nav button span{font-size:10px;color:var(--muted)}.service-nav button b{margin-left:auto;font-weight:400}.service-nav button[aria-pressed=true]{background:var(--ink);color:white}.service-nav button[aria-pressed=true] span{color:var(--pink)}#service-content{padding:20px 0;min-height:490px}#service-content h3{font:38px/1.2 'Italiana',Georgia,serif;margin-bottom:17px}#service-content>p:not(.eyebrow){color:var(--muted)}#service-content ul{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;padding:0;list-style:none;margin:22px 0}#service-content li{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:22px}.portfolio{background:#211d1e;color:var(--paper)}.portfolio h2 em{color:var(--pink)}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px}.gallery img{height:430px;transition:transform .3s}.gallery a{overflow:hidden}.gallery a:hover img{transform:scale(1.025)}.gallery a:nth-child(2){padding-top:65px}.gallery span{padding:18px 0;display:flex;justify-content:space-between;border-bottom:1px solid #ffffff30}.gallery b{font-weight:400}.watch{margin-top:60px;display:grid;grid-template-columns:1fr 2fr;gap:20px;border-top:1px solid #ffffff30;padding-top:25px}.watch>span{font-size:10px;letter-spacing:2px}.watch a{display:flex;justify-content:space-between;gap:25px}.watch b{font-size:12px;white-space:nowrap}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.portrait{position:sticky;top:130px}.portrait img{aspect-ratio:4/5;object-position:48%}.portrait>span{display:block;padding-top:16px;font-size:9px;letter-spacing:2px}.about-copy>p{color:var(--muted)}.timeline{margin:30px 0}.timeline>div{display:flex;gap:25px;border-top:1px solid var(--line);padding:14px 0;font-size:12px}.timeline b{color:#8d3c52;font-size:16px}.timeline span{padding-top:3px}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:14px}summary span{float:right}.certs{font-size:12px;padding-left:20px;color:var(--muted)}.certs li{padding:7px 0}.brand-list{font-size:11px;line-height:2;margin-top:25px}.prices{background:#e9dfd8;display:grid;grid-template-columns:1fr 1.1fr;gap:8%}.prices>div>p:not(.eyebrow){color:var(--muted)}.price-row{display:flex;gap:30px;justify-content:space-between;padding:20px 0;border-bottom:1px solid #c4b6ae;align-items:center}.price-row span{font-size:13px}.price-row strong{font-size:20px;font-weight:500;white-space:nowrap}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.news-grid article{border-top:1px solid var(--line);padding-top:25px}.news-grid article>span{font-size:10px}.news-grid h3{font:29px/1.2 'Italiana',Georgia,serif;margin:22px 0}.news-grid p{font-size:13px;color:var(--muted)}.contact{background:var(--pink);display:grid;grid-template-columns:1fr 1fr;gap:9%}.contact h2{font-size:60px}.contact>div>p{max-width:400px}.location{display:grid;grid-template-columns:100px 1fr;gap:18px;margin-top:35px;font-size:12px}.location b{font-weight:600}form{background:#f7ecea;padding:35px}form label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}form label span{font-weight:400;color:var(--muted)}select,textarea{width:100%;border:1px solid #cabbba;background:transparent;padding:13px;font-size:13px;border-radius:0;margin-bottom:20px;color:var(--ink)}textarea{resize:vertical}form .button{width:100%}form .note{margin-top:15px}.instagram{font-size:12px;display:inline-block;border-bottom:1px solid}footer{padding:45px 7% 85px;display:flex;justify-content:space-between;gap:30px;background:var(--ink);color:var(--paper)}footer>span{font-size:11px;line-height:2;color:#cfc4c7}.floating{position:fixed;right:20px;bottom:20px;background:var(--paper);color:var(--ink);padding:12px 20px;border:1px solid var(--ink);font-size:12px;z-index:9;box-shadow:0 3px 18px #0001}.skip{position:fixed;left:10px;top:-100px;background:white;padding:12px;z-index:30}.skip:focus{top:10px}
@media(min-width:1550px){main,header,footer{max-width:1700px;margin:auto}}@media(max-width:1000px){nav{gap:18px}.hero-copy{padding:55px 7%}.hero{min-height:580px}.hero-art{min-height:580px}.actions{flex-wrap:wrap;margin-bottom:35px}.hero-foot{flex-direction:column;gap:7px}.section{padding:75px 6%}.gallery img{height:330px}.contact h2{font-size:48px}.watch{grid-template-columns:1fr}.about{gap:6%}header{padding:20px 5%}.brand{font-size:20px}}@media(max-width:700px){.announcement{font-size:8px;letter-spacing:1px}.announcement span{margin:0 7px}header{padding:18px 6%}.brand{font-size:18px}.brand small{font-size:6px;letter-spacing:1.8px}.menu{display:flex;gap:18px;align-items:center;border:0;background:none;font-size:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:flex-start}.hero{display:flex;flex-direction:column}.hero-copy{padding:40px 7% 30px}.hero-copy .eyebrow{font-size:8px}h1{font-size:64px;letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-foot{flex-direction:row;gap:15px;font-size:8px}.hero-art{min-height:480px}.hero-art>img{object-position:50% 35%}.hero .actions{margin:26px 0 35px;gap:22px}.ribbon{font-size:8px;letter-spacing:1.5px;padding:16px 8px}.ribbon span{margin:0 8px}.section{padding:60px 7%}h2{font-size:48px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.section-heading>.text-link{margin-top:25px}.service-layout{grid-template-columns:1fr;gap:15px;padding-top:15px}.service-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.service-nav button{font-size:13px;gap:9px;padding:15px 7px}.service-nav button b{font-size:13px}#service-content{min-height:0}#service-content h3{font-size:33px}#service-content ul{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;gap:15px}.gallery a:nth-child(2){padding-top:35px}.gallery a:last-child{grid-column:1/-1;max-width:75%;margin:15px auto 0}.gallery img{height:260px}.gallery a:last-child img{height:340px}.gallery span{font-size:11px}.watch a{display:block;font-size:14px}.watch b{display:block;margin-top:15px}.about{grid-template-columns:1fr;gap:40px}.portrait{position:relative;top:auto}.portrait img{aspect-ratio:1}.about h2 br{display:none}.prices{grid-template-columns:1fr;gap:20px}.news-grid{grid-template-columns:1fr;gap:35px}.news-grid h3{margin-top:15px}.contact{grid-template-columns:1fr;gap:30px}.contact h2{font-size:46px}form{padding:25px 20px}.location{grid-template-columns:90px 1fr}footer{flex-direction:column;padding:40px 7% 90px}.floating{right:12px;bottom:12px}.eyebrow{font-size:9px}.price-row strong{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Black Tokyo: intense red, black and neutral white. */
:root{--paper:#f7f7f7;--ink:#101010;--pink:#e50924;--muted:#626262;--line:#d4d4d4;--red:#e50924}
body{background:#101010;color:var(--paper)}
.announcement{background:#050505;border-bottom:1px solid #303030}
.announcement span{color:#ff3047}
header{background:#101010;border-color:#343434}
header .button{background:var(--red);color:#fff;border-color:var(--red)}
.button:hover,header .button:hover{background:#b8001b;border-color:#b8001b;color:#fff}
.menu{color:var(--paper)}
.hero-copy{--muted:#bfbfbf}
.hero-copy .eyebrow{color:#ff4357}
h1 em{color:#ff3047}
.hero .button{background:var(--red);color:#fff;border-color:var(--red)}
.hero .button:hover{background:#b8001b;border-color:#b8001b}
.ribbon{background:#c9001e;color:#fff}
.services,.about{background:var(--paper);color:var(--ink)}
.services h2 em,.about h2 em{color:#bd001b}
.service-nav button{color:var(--ink)}
.service-nav button[aria-pressed=true]{background:#c9001e;color:#fff}
.service-nav button[aria-pressed=true] span{color:#fff}
.portfolio{background:#101010}
.portfolio h2 em,.portfolio .eyebrow,.watch>span{color:#ff4357}
.timeline b{color:#bd001b}
.prices{background:#1c1012;color:var(--paper);--muted:#c8c3c4}
.prices .eyebrow,.prices h2 em,.price-row strong{color:#ff4357}
.price-row{border-color:#553139}
.news{background:#171717;--muted:#bfbfbf;--line:#414141}
.news .eyebrow,.news-grid article>span{color:#ff4357}
.contact{background:#bd001b;color:#fff;--muted:#ededed}
.contact h2 em{color:#fff}
.contact form{background:#141414;--muted:#c4c4c4}
.contact select,.contact textarea{border-color:#555;background:#242424;color:#fff}
.contact textarea::placeholder{color:#bfbfbf}
.contact .button{background:#e50924;border-color:#e50924;color:#fff}
.contact .button:hover{background:#b8001b}
footer{background:#050505;border-top:1px solid #303030}
footer>span{color:#bfbfbf}
.floating{background:#c9001e;color:#fff;border-color:#ff4357;box-shadow:0 3px 18px #0003}
.floating:hover{background:#a90019}
.skip{color:#101010}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#ff4357}
@media(max-width:700px){nav{background:#101010;border-color:#343434}}
.duration{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:5px;font-weight:400}#service-content li{padding:12px 0}#service-content li .duration{color:#626262}
