
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f4f0;color:#202b27;font-family:Arial,"Yu Gothic",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #a99972;outline-offset:6px}img{display:block;max-width:100%}
header{position:absolute;top:0;left:0;right:0;z-index:5;height:120px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid #ffffff29}.logo{display:flex;align-items:center;gap:20px;font-size:16px;font-weight:500;letter-spacing:.12em}.logo img{width:67px;height:64px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}nav{display:flex;gap:40px;font-size:11px;letter-spacing:.1em}nav a:last-child{border-bottom:1px solid #ffffff80;padding-bottom:8px}
.hero{height:100svh;min-height:780px;max-height:1300px;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:170px 8% 110px;color:#fff;background:#101d18}.hero:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(7,20,16,.78),rgba(7,20,16,.3)),linear-gradient(0deg,rgba(7,20,16,.55),transparent 55%),url('https://altreco.jp/cdn/shop/files/ChatGPT_Image_2026_7_19_15_57_08.png?v=1788777218&width=2000') center/cover}.hero:after{content:'';position:absolute;top:120px;bottom:0;left:5%;width:1px;background:#ffffff20}.eyebrow{font-size:10px;letter-spacing:.25em;color:#7c877d}.hero .eyebrow{color:#c9d1c7;font-size:10px}.hero-index{display:none}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(55px,7.6vw,118px);line-height:1.5;letter-spacing:.09em;font-weight:400;margin:45px 0 35px}.hero h1 span{padding-left:8vw}.hero-graphic{display:none}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:35px}.hero p{font-size:12px;line-height:2.3;letter-spacing:.08em;color:#e0e4dc;margin:0}.jump{position:absolute;right:5%;bottom:55px;font-size:10px;letter-spacing:.18em;writing-mode:vertical-rl;display:flex;align-items:center;gap:20px}.jump:after{content:'';width:1px;height:65px;background:#acb7a8}.hero-note{position:absolute;bottom:35px;left:8%;font-size:9px;letter-spacing:.25em;color:#aeb9ad}
.businesses{padding:110px 0 0}.business-heading{margin:0 8% 65px;display:grid;grid-template-columns:1fr 1fr;align-items:end}.business-heading .eyebrow{grid-column:1/-1}.business-heading h2{font-family:"Yu Mincho",serif;font-size:42px;font-weight:400;letter-spacing:.16em;margin:25px 0 0}.business-heading p{text-align:right;font-size:12px;letter-spacing:.1em;color:#737d73;margin:0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#f5f4f0}.card{position:relative;min-height:540px;color:#fff;overflow:hidden;background:#14221b}.card:first-child{grid-column:1/-1;min-height:650px}.photo{position:absolute;inset:0}.photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.6);transition:transform 1s,filter 1s}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,18,13,.9),rgba(5,18,13,.1) 85%)}.number{position:absolute;top:40px;left:7%;z-index:1;font-size:9px;letter-spacing:.23em;color:#d3dace}.photo-label{position:absolute;top:95px;left:7%;z-index:1;font-size:clamp(35px,4.8vw,74px);font-weight:400;letter-spacing:.06em;line-height:1.2}.card:first-child .photo-label{font-size:clamp(65px,10vw,140px);top:125px;left:8%;letter-spacing:.05em}.card:first-child .number{left:8%}.card-copy{position:relative;z-index:2;display:grid;grid-template-columns:1fr 60px;align-items:end;gap:25px;min-height:540px;padding:275px 7% 50px}.card:first-child .card-copy{min-height:650px;padding:360px 8% 65px}.tag{display:none}.card h2{font-family:"Yu Mincho",serif;font-size:28px;font-weight:400;letter-spacing:.08em;line-height:1.6;margin:0 0 18px}.card p{font-size:12px;line-height:2.1;color:#d5ddd1;margin:0}.arrow{width:56px;height:56px;border:1px solid #ffffff65;border-radius:50%;display:grid;place-items:center;font-size:22px;transition:background .3s,color .3s}.card:hover img{transform:scale(1.04);filter:saturate(.9)}.card:hover .arrow{background:#f5f4f0;color:#15251b}.card:last-child{grid-column:1/-1;min-height:520px}.card:last-child .card-copy{min-height:520px;padding-left:8%;padding-right:8%}.card:last-child .number,.card:last-child .photo-label{left:8%}.card:last-child .photo img{object-position:center 45%}
.about{padding:140px 8%;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{font-family:"Yu Mincho",serif;font-size:36px;font-weight:400;line-height:1.9;letter-spacing:.08em;margin:30px 0 0}.about p{font-size:13px;line-height:2.6;color:#637063;margin:30px 0 35px}.underlined{font-size:11px;letter-spacing:.1em;border-bottom:1px solid #9aa392;padding:0 45px 12px 0}.contact{padding:100px 8%;background:#17271f;color:#f4f4ef;display:flex;align-items:center;justify-content:space-between;gap:35px}.contact h2{font-size:clamp(46px,7vw,100px);font-weight:400;letter-spacing:.02em;margin:0 0 25px}.contact p{font-size:11px;line-height:2.4;color:#bcc7b9}.contact a{border-bottom:1px solid #7b8f7d;padding:20px 0;display:flex;justify-content:space-between;gap:80px;font-size:12px;min-width:240px}footer{background:#101d17;color:#f5f4f0;padding:55px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .logo{font-size:13px}footer .logo img{width:50px;height:50px}footer .links{display:flex;gap:25px;font-size:10px}footer small{font-size:9px;letter-spacing:.1em;color:#a4b09f}
@media(min-width:1700px){.hero h1{font-size:130px}}
@media(max-width:700px){header{height:90px;padding:0 6%}.logo{font-size:12px;gap:10px}.logo img{width:45px;height:45px}nav{gap:15px;font-size:10px}nav a:first-child,nav a:nth-child(2){display:none}.hero{height:100svh;min-height:750px;max-height:1000px;padding:140px 8% 90px}.hero:after{top:90px}.hero .eyebrow{font-size:8px;letter-spacing:.18em}.hero h1{font-size:clamp(35px,8vw,56px);letter-spacing:.05em;line-height:1.8;margin:45px 0 30px}.hero h1 span{padding-left:2vw;white-space:nowrap}.hero-bottom{display:block}.hero p{font-size:10px;line-height:2.4;max-width:88%}.hero p br:last-child{display:none}.jump{font-size:8px;right:4%;bottom:35px}.hero-note{font-size:7px;left:8%;bottom:28px}.businesses{padding-top:70px}.business-heading{display:block;margin:0 8% 40px}.business-heading h2{font-size:30px;margin-top:20px}.business-heading p{text-align:left;margin-top:20px;font-size:11px}.grid{grid-template-columns:1fr}.card,.card:first-child,.card:last-child{grid-column:auto;min-height:490px}.card-copy,.card:first-child .card-copy,.card:last-child .card-copy{min-height:490px;padding:260px 8% 35px;grid-template-columns:1fr 42px;gap:15px}.number,.card:first-child .number,.card:last-child .number{top:30px;left:8%;font-size:8px}.photo-label,.card:first-child .photo-label,.card:last-child .photo-label{top:90px;left:8%;font-size:36px}.card:first-child .photo-label{font-size:58px}.card h2{font-size:23px}.card p{font-size:10px}.arrow{width:42px;height:42px}.about{padding:75px 8%;grid-template-columns:1fr;gap:15px}.about h2{font-size:28px}.about p{font-size:12px;margin-top:15px}.contact{padding:65px 8%;align-items:start;flex-direction:column}.contact h2{font-size:52px}.contact p{font-size:10px}.contact a{min-width:100%;margin-top:10px}footer{padding:40px 8%;align-items:start;flex-direction:column}footer .logo{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img,.arrow{transition:none}.card:hover img{transform:none}}

/* Fixed visual canvas with independently scrolling editorial panels. */
.site-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(7,22,17,.68),rgba(7,22,17,.22)),url('https://altreco.jp/cdn/shop/files/ChatGPT_Image_2026_7_19_15_57_08.png?v=1788777218&width=2000') center/cover}
body{background:#15251e;isolation:isolate}
.hero{background:transparent;min-height:780px;height:100svh;max-height:none}
.hero:before{display:none}
.hero:after{background:#ffffff26}
.businesses{background:transparent;padding:105px 0 0}
.business-heading{background:#f5f4f0;margin:0 0 110px 0;width:67%;padding:65px 8%;grid-template-columns:1fr;position:relative}
.business-heading:after{content:'04';position:absolute;right:7%;top:30px;font-size:90px;line-height:1;font-family:Georgia,serif;color:#d5d9d0;font-weight:400}
.business-heading h2{position:relative;z-index:1}.business-heading .eyebrow{position:relative;z-index:1}
.business-heading p{text-align:left;margin-top:20px}
.grid{display:flex;flex-wrap:wrap;align-items:start;gap:0;background:transparent;padding-bottom:150px}
.card,.card:first-child,.card:last-child{flex:none;min-height:550px;box-shadow:0 25px 70px #07181025}
.card:first-child{width:85%;margin:0 0 160px 15%;min-height:640px}
.card:nth-child(2){width:56%;margin:0 0 0 0;min-height:560px}
.card:nth-child(3){width:39%;margin:170px 0 0 5%;min-height:560px}
.card:last-child{width:76%;margin:155px 24% 0 0;min-height:540px}
.card-copy,.card:first-child .card-copy,.card:last-child .card-copy{min-height:550px;padding:300px 8% 45px}
.card:first-child .card-copy{min-height:640px;padding-top:365px}
.card:nth-child(2) .card-copy,.card:nth-child(3) .card-copy{min-height:560px}
.card:last-child .card-copy{min-height:540px}
.card:nth-child(3) .photo-label{font-size:clamp(30px,4vw,64px)}
.photo-label{font-family:Arial,"Yu Gothic",sans-serif}.card:last-child .photo-label{font-size:clamp(30px,4vw,64px)}
.about{width:90%;margin-left:10%;padding:100px 8%;background:#f5f4f0;gap:65px;position:relative}
.about:before{content:'REBRIGHT';position:absolute;left:-7%;top:-70px;font-family:Georgia,serif;font-size:clamp(55px,10vw,150px);letter-spacing:-.02em;color:#ffffffc9;pointer-events:none;line-height:1}
.contact{margin-top:220px;background:rgba(13,31,23,.91);border-top:1px solid #ffffff2b;padding-top:90px;padding-bottom:90px}
footer{background:#101d17}
@media(max-width:700px){.hero{min-height:750px}.businesses{padding-top:60px}.business-heading{width:90%;padding:45px 8%;margin-bottom:65px}.business-heading:after{font-size:65px;right:8%;top:30px}.grid{padding-bottom:100px}.card,.card:first-child,.card:nth-child(2),.card:nth-child(3),.card:last-child{min-height:480px;width:92%;margin:0 0 65px 0}.card:first-child,.card:nth-child(3){margin-left:8%;margin-right:0}.card:last-child{margin-bottom:0}.card-copy,.card:first-child .card-copy,.card:nth-child(2) .card-copy,.card:nth-child(3) .card-copy,.card:last-child .card-copy{min-height:480px;padding:255px 8% 35px}.card:nth-child(3) .photo-label,.card:last-child .photo-label{font-size:30px}.about{width:94%;margin-left:6%;padding:65px 8%;gap:15px}.about:before{font-size:55px;left:-3%;top:-32px}.contact{margin-top:120px;padding:65px 8%}.site-backdrop{background-position:57% center}}

/* Typography-led identity, approved direction */
.site-backdrop{background:radial-gradient(ellipse at 85% 25%,#d3d6c9 0,transparent 48%),#f3f2ed;overflow:hidden}
.site-backdrop:before{content:'';position:absolute;width:75vw;height:75vw;min-width:650px;min-height:650px;border:1px solid #89958455;border-radius:50%;right:-26vw;top:-18vw;box-shadow:0 0 0 75px #8896800a,0 0 0 76px #89958433,0 0 0 155px #89958409,0 0 0 156px #89958424;transform:rotate(-20deg)}
.site-backdrop:after{content:'';position:absolute;right:12%;top:24%;width:23vw;height:62vh;background:linear-gradient(145deg,#80917d,#213d32 65%,#142c22);border-radius:50% 50% 46% 46%;transform:rotate(32deg);box-shadow:45px 30px 100px #253a2620;opacity:.85}
header{color:#1d3027;border-bottom:1px solid #1d30271c}.logo img{filter:none;mix-blend-mode:multiply}nav a:last-child{border-color:#72806d}
.hero{color:#162e24;padding:165px 7% 75px;min-height:880px;justify-content:flex-start;overflow:hidden}.hero:after{background:#243c241a}.hero-lead{font-size:clamp(20px,2.3vw,34px);font-weight:700;letter-spacing:.04em;position:relative;z-index:1;margin-bottom:35px}.hero-english{position:relative;z-index:1}.hero-english>p{font-size:clamp(19px,2.5vw,35px);font-weight:600;line-height:1.2;margin:0 0 12px;color:#162e24;letter-spacing:-.03em}.hero h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(85px,10.5vw,170px);font-weight:900;line-height:.86;letter-spacing:-.065em;margin:0;color:#162e24}.hero-translation{font-size:12px;letter-spacing:.13em;margin-top:25px}.hero-company{position:absolute;right:7%;bottom:95px;max-width:380px;z-index:2;border-top:1px solid #253e3055;padding-top:20px}.hero-company>span{font-size:13px;font-weight:600;letter-spacing:.12em}.hero-company>p{font-size:11px;color:#405546;line-height:2.2;margin-top:15px;letter-spacing:.04em}.jump{color:#294634}.jump:after{background:#29463470}.business-heading{background:#f9f8f4}.card{box-shadow:none}.about:before{color:#25433244}.contact{background:#142c22}
@media(min-width:1500px){.hero{padding-top:170px;min-height:980px}.hero h1{font-size:170px}}
@media(max-width:700px){header{height:90px}.hero{padding:140px 7% 70px;min-height:850px;height:100svh}.hero-lead{font-size:20px;letter-spacing:0;margin-bottom:40px}.hero-english>p{font-size:21px;margin-bottom:15px}.hero h1{font-size:clamp(78px,20vw,135px);line-height:.9;letter-spacing:-.065em}.hero-translation{font-size:10px;margin-top:22px;letter-spacing:.08em}.hero-company{position:relative;right:auto;bottom:auto;margin-top:45px;max-width:82%;padding-top:16px}.hero-company>span{font-size:11px}.hero-company>p{font-size:10px;line-height:2}.jump{right:4%;bottom:35px;color:#294634}.site-backdrop:after{width:43vw;height:48vh;right:-3%;top:27%;opacity:.42}.site-backdrop:before{right:-130vw;top:-45vw}.about:before{color:#25433244}}

/* Colour, depth, and substantive business overview */
.site-backdrop{background:radial-gradient(ellipse at 83% 22%,#e3bca444,transparent 45%),#f6f3eb}
.site-backdrop:before{width:110vw;height:110vw;min-width:900px;min-height:900px;right:-68vw;top:-42vw;border:0;border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 21px,#ab8f5a40 22px 23px,transparent 24px 38px);box-shadow:none;transform:rotate(-30deg);opacity:.8}
.site-backdrop:after{width:65vw;height:110vh;right:-10vw;top:-10vh;border-radius:48% 52% 63% 37% / 39% 43% 57% 61%;transform:rotate(-27deg);background:radial-gradient(ellipse at 20% 20%,#e8a28e 0,transparent 38%),radial-gradient(ellipse at 75% 75%,#bb9c58 0,transparent 42%),linear-gradient(135deg,#dfc6a0 2%,#9db5a2 30%,#347e78 60%,#143e48 90%);box-shadow:inset 12px 10px 85px #fff8,40px 35px 100px #183e3c15;opacity:.9}
.hero:before{display:block;z-index:-1;inset:auto 3% 10% auto;width:29vw;height:29vw;border-radius:50%;background:repeating-linear-gradient(135deg,transparent 0 5px,#f6f3eb88 5px 6px);border:1px solid #e9dac166;transform:rotate(-12deg);pointer-events:none}
.hero h1{color:#182d31}.hero-lead{color:#243b3d}.hero-english>p{color:#2c555b}
.hero-company{background:#f6f3ebed;backdrop-filter:blur(12px);padding:20px 24px;border-top:2px solid #b48160}.hero-company>p{margin-bottom:0}
.services-overview{padding:100px 5% 130px;position:relative}
.services-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:0 3% 75px}.services-heading h2{font-size:clamp(45px,5.5vw,85px);line-height:1.04;letter-spacing:-.055em;font-weight:600;margin:25px 0 0;color:#203d43}.services-heading>p{font-size:12px;line-height:2.3;background:#f6f3ebe8;padding:20px;color:#41575a}
.services-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}
.service-panel{position:relative;background:#ffffffed;backdrop-filter:blur(16px);padding:40px 25px 28px;display:flex;flex-direction:column;border-top:3px solid #296c70;border-radius:2px 2px 18px 2px;min-height:620px;box-shadow:0 15px 40px #1a394307}
.service-panel:nth-child(2){border-color:#c5765f;margin-top:35px}.service-panel:nth-child(3){border-color:#b29451;margin-top:70px}.service-panel:nth-child(4){border-color:#8b7b93;margin-top:105px}
.service-no{position:absolute;right:15px;top:-37px;font-size:65px;font-weight:400;line-height:1;color:#f7f3eb;-webkit-text-stroke:1px #516566;font-family:Arial,sans-serif;letter-spacing:-4px}.service-en{font-size:clamp(26px,2.7vw,43px);font-weight:600;letter-spacing:-.04em;color:#296c70}.service-panel:nth-child(2) .service-en{color:#b86c57}.service-panel:nth-child(3) .service-en{color:#9b7e3b}.service-panel:nth-child(4) .service-en{color:#806889}
.service-panel h3{font-size:13px;line-height:1.8;margin:16px 0 25px}.service-panel p{font-size:12px;line-height:2.2;color:#485454;margin:0 0 20px}.brand-logo{width:150px;height:65px;object-fit:contain;align-self:start;margin:0 0 20px}.service-detail{width:100%;aspect-ratio:1.25;object-fit:cover;margin:5px 0 25px}.service-panel>a{display:flex;justify-content:space-between;gap:12px;font-size:11px;border-top:1px solid #d6dcda;padding-top:20px;margin-top:auto}.service-panel>a span{font-size:20px}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 30px}.service-tags span{border:1px solid #ddd8ce;padding:8px;font-size:8px;letter-spacing:1px}.salon-name{font-size:12px;letter-spacing:2px;margin:15px 0 35px;color:#806889}.salon-name strong{font-family:Georgia,serif;font-size:38px;font-weight:400;letter-spacing:3px}
.businesses{padding-top:0}.business-heading{background:#f6f3ebef}.about{background:#f6f3eb}.contact{background:#213e46}
@media(max-width:1000px) and (min-width:701px){.services-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 25px}.service-panel:nth-child(n){margin-top:0}}
@media(max-width:700px){.site-backdrop:after{width:100vw;right:-52vw;top:12%;height:70vh;opacity:.75}.site-backdrop:before{right:-200vw;opacity:.5}.hero:before{width:60vw;height:60vw;right:-10%;bottom:20%}.hero-company{padding:16px;max-width:87%;backdrop-filter:none}.services-overview{padding:65px 6% 75px}.services-heading{display:block;margin:0 2% 65px}.services-heading h2{font-size:52px}.services-heading>p{font-size:11px;padding:15px 0;margin-top:25px;background:transparent}.services-columns{grid-template-columns:1fr;gap:65px}.service-panel:nth-child(n){margin-top:0;min-height:0;padding:35px 25px 28px}.service-en{font-size:38px}.service-panel p{font-size:12px}.service-panel>a{margin-top:20px}.brand-logo{width:160px}.service-detail{max-height:260px;object-fit:cover}.service-no{font-size:60px;top:-35px}}

/* Four fields / intersecting paths: bold, flat graphic language. */
.site-backdrop{background:#fffaf1}
.site-backdrop:before{content:'';position:absolute;inset:-15% -10%;width:auto;height:auto;min-width:0;min-height:0;right:-10%;top:-15%;border:0;border-radius:0;box-shadow:none;opacity:1;transform:none;background:linear-gradient(125deg,transparent 0 56%,#e64132 56% 66%,transparent 66%),linear-gradient(35deg,transparent 0 63%,#5138ae 63% 71%,transparent 71%),linear-gradient(145deg,transparent 0 76%,#ffbd12 76% 91%,transparent 91%)}
.site-backdrop:after{content:'';position:absolute;width:67vw;height:67vw;right:-27vw;top:3vh;border:clamp(70px,11vw,180px) solid #007b89;border-radius:50%;transform:none;background:none;box-shadow:none;opacity:1}
.hero:before{content:'';width:36vw;height:36vw;right:2%;bottom:8%;border-radius:50%;border:0;background:repeating-linear-gradient(135deg,transparent 0 8px,#fffaf1 8px 11px);transform:none;opacity:.85}
.hero-lead,.hero h1,.hero-english>p{color:#111817}.hero h1{font-weight:900}.hero-translation{color:#172323;font-weight:600}.hero-company{background:#fffdf8;border-top:3px solid #e64132;backdrop-filter:none;box-shadow:0 10px 35px #211b1510}.hero-company>p{color:#343d3c}.jump{color:#101817}.hero .hero-lead,.hero .hero-english{position:relative;width:fit-content}.hero-english{isolation:isolate}.hero-english:before{content:'';position:absolute;inset:-10px -25px -15px -15px;background:#fffaf1d9;z-index:-1;clip-path:polygon(0 0,95% 0,100% 100%,0 100%)}
.eyebrow{color:#35413c}.services-heading h2{color:#111817}.services-heading>p{background:#fffdf8;color:#172323;border-left:3px solid #007b89;padding:20px 24px}.services-columns{gap:22px}.service-panel{background:#fff;border-radius:0;border-top:5px solid #007b89;backdrop-filter:none;box-shadow:8px 8px 0 #162c3012}.service-panel:nth-child(2){border-color:#e64132}.service-panel:nth-child(3){border-color:#e5a300}.service-panel:nth-child(4){border-color:#5138ae}.service-en{color:#007b89}.service-panel:nth-child(2) .service-en{color:#d63425}.service-panel:nth-child(3) .service-en{color:#a77400}.service-panel:nth-child(4) .service-en{color:#5138ae}.service-no{color:#fffdf8;-webkit-text-stroke:1.5px #15221f;font-weight:700}.service-panel p{color:#27312e}.service-panel h3{color:#111817}.service-panel>a{border-color:#8b9791}.salon-name{color:#5138ae}.service-tags span{border-color:#87928c;color:#19241f}.business-heading{background:#fffdf8;border-left:7px solid #007b89}.business-heading:after{color:#007b891c}.card .photo img{filter:saturate(.9)}.card:hover .photo img{filter:saturate(1)}.card:first-child{border-top:5px solid #007b89}.card:nth-child(2){border-top:5px solid #e64132}.card:nth-child(3){border-top:5px solid #ffbd12}.card:last-child{border-top:5px solid #5138ae}.about{background:#fffdf8;border-top:5px solid #111817}.about:before{color:#fffdf8}.contact{background:#111d20;border-top:5px solid #e64132}.contact a{border-bottom:2px solid #ffbd12}footer{background:#0b1416}
@media(max-width:700px){.site-backdrop:before{inset:-10% -40%;background:linear-gradient(125deg,transparent 0 54%,#e64132 54% 65%,transparent 65%),linear-gradient(35deg,transparent 0 65%,#5138ae 65% 73%,transparent 73%),linear-gradient(145deg,transparent 0 77%,#ffbd12 77% 94%,transparent 94%)}.site-backdrop:after{width:105vw;height:105vw;right:-65vw;top:22vh;border-width:20vw;opacity:1}.hero:before{width:65vw;height:65vw;right:-12%;bottom:18%;opacity:.8}.hero-english:before{inset:-10px -15px -15px -12px;background:#fffaf1eb}.hero-lead{background:#fffaf1e6;padding:5px 0}.services-heading>p{padding:16px 20px;background:#fffdf8}.service-panel:nth-child(n){box-shadow:6px 6px 0 #162c3012}.hero-company{background:#fffdf8}}

/* Generated outdoor screenprint background */
.site-backdrop{background:#f5efdf url('rebright-background-web.jpg') center center/cover no-repeat}
.site-backdrop:before,.site-backdrop:after,.hero:before{display:none}
.hero-english:before{display:none}.hero-company{right:7%;bottom:65px;background:#fffaf0ed;border-color:#d9802c}
.service-panel{border-color:#006472}.service-panel:nth-child(2){border-color:#dc792d}.service-panel:nth-child(3){border-color:#b59046}.service-panel:nth-child(4){border-color:#56736a}
@media(max-width:700px){.site-backdrop{background-position:38% center}.hero-english:before{display:block;background:#f5efdfd9}.hero-company{right:auto;bottom:auto}.hero-lead{background:#f5efdfd9}}

/* Narrative order: identity, approach, four businesses, company, contact. */
.hero{min-height:850px}.hero-english{margin-bottom:35px}
.mission-section{min-height:88svh;display:flex;align-items:center;padding:110px 8%;position:relative}
.mission-content{max-width:680px;position:relative;isolation:isolate}
.mission-content:before{content:'';position:absolute;inset:-55px -65px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 35% 50%,#f6efdf 0%,#f6efdfeb 55%,#f6efdf00 75%)}
.mission-content .eyebrow{font-size:13px;letter-spacing:.2em;color:#164a52;font-weight:600}
.mission-content h2{font-family:"Yu Gothic",sans-serif;font-size:clamp(32px,3.7vw,56px);line-height:1.65;letter-spacing:.025em;font-weight:700;color:#132e33;margin:25px 0 30px}
.mission-content p{font-size:14px;line-height:2.3;color:#213d3c;margin:0 0 22px}
.mission-content p.mission-lead{font-size:20px;font-weight:600;line-height:1.9;margin-bottom:25px}
.mission-content .underlined{display:inline-flex;gap:65px;align-items:center;margin-top:15px;color:#173b40;border-color:#496965}
.services-overview{padding:100px 5% 110px;background:linear-gradient(180deg,#f5eedfc9,#f5eedf55)}
.services-heading{display:block;margin:0 0 70px}.services-heading h2{font-size:clamp(45px,5vw,76px);font-weight:700;color:#15373d;margin:18px 0 20px;letter-spacing:-.04em}
.services-heading>p{display:block;background:transparent;padding:0;border:0;font-size:15px;font-weight:500;color:#1a3938;backdrop-filter:none;margin:0}
.services-columns{align-items:stretch;gap:24px}
.service-panel,.service-panel:nth-child(2),.service-panel:nth-child(3),.service-panel:nth-child(4){margin-top:0;min-height:710px;border-top:0;box-shadow:none;border-radius:0;padding:36px 26px 28px;background:#fffdf8}
.service-no{position:static;display:block;align-self:start;line-height:1;margin:0 0 30px;font-size:14px;letter-spacing:.1em;font-weight:400;color:#6c7e77;-webkit-text-stroke:0}
.service-en{font-size:clamp(27px,2.6vw,40px)}.service-panel h3{min-height:24px;margin:15px 0 28px}.service-panel p{line-height:2.1}.service-panel>a{padding-top:20px}.service-tags{margin-bottom:30px}.brand-logo{margin-bottom:23px}.service-detail{margin-top:10px}.about{margin:0;width:100%;padding:100px 8%;border:0;background:#fffdf8}.about:before{display:none}.contact{margin-top:0}
@media(max-width:1000px) and (min-width:701px){.services-columns{gap:24px}.service-panel:nth-child(n){min-height:620px}.mission-content{max-width:600px}}
@media(max-width:700px){.hero{min-height:780px}.mission-section{min-height:700px;padding:80px 8%}.mission-content h2{font-size:29px;line-height:1.7}.mission-content p{font-size:12px;line-height:2.3}.mission-content p.mission-lead{font-size:17px}.mission-content p br{display:none}.mission-content:before{inset:-50px -30px;background:radial-gradient(ellipse,#f6efdf 20%,#f6efdfeb 60%,transparent 85%)}.services-overview{padding:65px 6% 75px}.services-heading{margin-bottom:35px}.services-heading h2{font-size:42px}.services-heading>p{font-size:13px}.services-columns{gap:18px}.service-panel:nth-child(n){margin:0;min-height:0;padding:30px 26px;box-shadow:none}.service-no{font-size:13px;margin-bottom:20px}.service-panel h3{min-height:0}.service-panel>a{margin-top:auto}.service-panel p:last-of-type{margin-bottom:30px}.service-detail{max-height:300px;margin-bottom:30px}.about{padding:65px 8%;width:100%;margin:0}.contact{margin-top:0}}

/* English impact with Japanese editorial copy. */
.mission-section{padding-top:115px;padding-bottom:115px;min-height:100svh}
.mission-content{max-width:900px}
.mission-content .eyebrow{font-size:11px;letter-spacing:.24em}
.mission-english{font-family:Arial,Helvetica,sans-serif;font-size:clamp(52px,6.7vw,105px);font-weight:900;line-height:.95;letter-spacing:-.06em;color:#132e33;margin:30px 0 28px}
.mission-english span{color:#17616b}
.mission-content h2{font-size:clamp(27px,2.9vw,43px);line-height:1.8;letter-spacing:.05em;font-weight:700;margin:0 0 30px}
.mission-content p.mission-lead{font-size:17px;line-height:2;letter-spacing:.035em}
.mission-content p{font-size:13px;line-height:2.3}
.mission-content:before{inset:-55px -45px;background:radial-gradient(ellipse at 25% 50%,#f6efdf 5%,#f6efdfed 58%,#f6efdf00 80%)}
@media(max-width:700px){.mission-section{padding:85px 8%;min-height:0}.mission-english{font-size:clamp(35px,8.5vw,58px);line-height:.98;letter-spacing:-.055em;margin:25px 0}.mission-content h2{font-size:clamp(22px,5.5vw,30px);line-height:1.85;letter-spacing:.01em;margin-bottom:25px}.mission-content p.mission-lead{font-size:15px}.mission-content p{font-size:12px}.mission-content:before{inset:-40px -25px}}

/* Opaque editorial surfaces and consistent typographic hierarchy. */
.mission-section{background:#f2eadb}
.mission-content:before{display:none}
.mission-english,.mission-english span{color:#172d31}
.mission-content h2{color:#172d31}
.mission-content p{font-size:15px;font-weight:500;line-height:2.15;color:#283b3b}
.mission-content p.mission-lead{font-size:19px;font-weight:700;line-height:1.95}
.services-overview{background:#e8e3d8}
.services-heading>p{background:none;font-weight:600;font-size:15px;color:#253738}
.service-panel,.service-panel:nth-child(2),.service-panel:nth-child(3),.service-panel:nth-child(4){background:#f8f5ed;backdrop-filter:none;box-shadow:none;min-height:590px}
.service-en,.service-panel:nth-child(2) .service-en,.service-panel:nth-child(3) .service-en,.service-panel:nth-child(4) .service-en{color:#172d31;font-weight:800}
.service-panel h3{font-size:15px;font-weight:700;line-height:1.8}
.service-panel p{font-size:14px;font-weight:500;line-height:2;color:#2d3b39;letter-spacing:.015em}
.service-panel>a{font-size:12px;font-weight:600;color:#203432}
.service-no{font-weight:600;color:#53615b}
.salon-name{color:#172d31}
.service-tags span{font-size:9px;font-weight:600;border-color:#aab2a8}
.about{background:#f2eadb}.about p{font-size:15px;font-weight:500;line-height:2.15;color:#283b3b}
@media(max-width:1000px) and (min-width:701px){.service-panel:nth-child(n){min-height:550px}}
@media(max-width:700px){.mission-content p{font-size:14px;line-height:2;font-weight:500}.mission-content p.mission-lead{font-size:17px}.service-panel:nth-child(n){min-height:0}.service-panel p{font-size:14px;line-height:2}.service-panel h3{font-size:15px}.about p{font-size:14px}.services-heading>p{font-size:14px}}

/* Mission illustration and background-visible business presentation. */
.mission-section{position:relative;overflow:hidden;isolation:isolate;background:#f2eadb;padding-top:100px;padding-bottom:100px}
.mission-art{position:absolute;right:0;top:0;width:49%;height:100%;margin:0;z-index:-1;display:flex;align-items:center;justify-content:center}
.mission-art img{width:100%;height:100%;object-fit:cover;object-position:60% center;mix-blend-mode:multiply}
.mission-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f2eadb 0%,#f2eadb00 27%);pointer-events:none}
.mission-content{max-width:64%;z-index:1}.mission-english{font-size:clamp(48px,6vw,94px)}
.services-overview{background:transparent;padding-top:95px;padding-bottom:110px}
.services-heading{display:inline-block;background:#fffaf0;padding:28px 36px;margin-bottom:65px}
.services-heading h2{color:#172d31}.services-heading>p{background:transparent}
.services-columns{gap:25px;align-items:stretch}
.service-panel,.service-panel:nth-child(2),.service-panel:nth-child(3),.service-panel:nth-child(4){background:#fff;min-height:620px;padding:42px 28px 28px;margin:0;border-radius:0 12px 12px 0;box-shadow:none;border:0;position:relative}
.service-no{position:absolute;top:-38px;right:22px;font-size:62px;line-height:1;margin:0;color:#fff;-webkit-text-stroke:1px #243f41;font-weight:600;letter-spacing:-.04em}
.service-en,.service-panel:nth-child(2) .service-en,.service-panel:nth-child(3) .service-en,.service-panel:nth-child(4) .service-en{color:#172d31;font-size:clamp(27px,2.6vw,40px)}
.service-panel p{color:#263637;font-size:14px;font-weight:500;line-height:2.05}
@media(max-width:1000px) and (min-width:701px){.mission-content{max-width:75%}.mission-art{width:45%;opacity:.65}.services-columns{gap:65px 25px}}
@media(max-width:700px){.mission-section{display:flex;flex-direction:column;align-items:stretch;padding:70px 8% 0}.mission-content{max-width:100%}.mission-english{font-size:clamp(35px,8.5vw,58px)}.mission-art{position:relative;right:auto;top:auto;width:calc(100% + 16vw);height:320px;z-index:0;margin:35px -8vw 0;order:2}.mission-art img{object-fit:cover;object-position:65% center}.mission-art:after{background:linear-gradient(180deg,#f2eadb,transparent 20%)}.services-overview{padding:65px 6% 75px}.services-heading{padding:22px 25px;margin-bottom:65px;max-width:100%}.services-heading h2{font-size:38px}.services-columns{gap:65px}.service-panel:nth-child(n){min-height:0;padding:36px 26px 28px}.service-no{font-size:55px;top:-33px}.service-panel h3{margin-bottom:25px}}

/* Business heading directly on the shared artwork. */
.services-heading{display:block;background:none;border:0;padding:0;margin:0 0 70px;box-shadow:none;backdrop-filter:none}
.services-heading .eyebrow{font-size:12px;font-weight:600;letter-spacing:.22em;color:#17383c}
.services-heading h2{font-size:clamp(48px,5.8vw,88px);font-weight:800;letter-spacing:-.045em;line-height:1.05;margin:22px 0 26px;color:#172d31}
.services-heading>p{background:none;border:0;padding:0;font-size:clamp(22px,2vw,30px);font-weight:700;letter-spacing:.06em;line-height:1.6;color:#172d31;margin:0}
@media(max-width:700px){.services-heading{background:none;padding:0;margin-bottom:65px}.services-heading h2{font-size:clamp(40px,10vw,60px);margin-bottom:20px}.services-heading>p{font-size:21px;font-weight:700;letter-spacing:.025em}.services-heading .eyebrow{font-size:10px}}

.business-panoramas{width:100%;padding:0 0 140px;background:transparent}
.panorama{display:block;position:relative;width:100%;height:clamp(360px,35vw,620px);overflow:hidden;color:#fff;margin:0 0 140px;background:#142c2e}
.panorama:last-child{margin-bottom:0}.panorama img{width:100%;height:100%;object-fit:cover;transition:transform 1s}
.panorama:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061a20a6,transparent 80%)}
.panorama-copy{position:absolute;z-index:1;left:8%;top:50%;transform:translateY(-50%)}
.panorama-copy>span{font-size:12px;letter-spacing:.22em}.panorama h2{font-size:clamp(32px,4.8vw,74px);font-weight:700;letter-spacing:.02em;margin:24px 0}.panorama p{font-size:18px;font-weight:500;letter-spacing:.08em}.panorama-link{display:inline-block;font-size:12px;margin-top:30px;border-bottom:1px solid #ffffff90;padding:0 45px 12px 0}.panorama:hover img{transform:scale(1.025)}
@media(max-width:700px){.business-panoramas{padding-bottom:75px}.panorama{height:390px;margin-bottom:75px}.panorama-copy{left:7%;right:7%}.panorama h2{font-size:32px}.panorama p{font-size:14px}.panorama img{object-position:60% center}.panorama:after{background:linear-gradient(90deg,#061a20c0,#061a2020)}}
@media(prefers-reduced-motion:reduce){.panorama img{transition:none}.panorama:hover img{transform:none}}

/* Official assets only: panoramic layouts with restrained grading. */
.panorama>.panorama-landscape{filter:saturate(.65) contrast(1.06);object-position:center 55%}
.panorama-copy .panorama-brand{position:static;width:clamp(220px,26vw,400px);height:auto;object-fit:contain;filter:brightness(0) invert(1);margin:25px 0 20px;transform:none}
.panorama .panorama-real-product{position:absolute;z-index:1;right:7%;top:50%;transform:translateY(-50%);width:30%;height:80%;object-fit:cover;border:1px solid #ffffff45;box-shadow:0 12px 40px #0003}
.panorama-altreco .panorama-copy{max-width:48%}
.panorama-creative>img,.panorama-guide>img,.panorama-karen>img{object-fit:contain;object-position:right center;width:64%;margin-left:auto;filter:saturate(.85);background:#132a2b}
.panorama-creative:after,.panorama-guide:after,.panorama-karen:after{background:linear-gradient(90deg,#142c2e 0 33%,#142c2ed9 41%,transparent 65%)}
.panorama-creative h2,.panorama-guide h2,.panorama-karen h2{font-size:clamp(30px,3.5vw,54px)}
.panorama:hover .panorama-real-product{transform:translateY(-50%)}.panorama:hover .panorama-brand{transform:none}
@media(max-width:700px){.panorama{height:420px}.panorama-altreco .panorama-copy{max-width:60%}.panorama-copy .panorama-brand{width:190px;max-width:100%}.panorama .panorama-real-product{right:4%;width:31%;height:49%;top:46%}.panorama-creative>img,.panorama-guide>img,.panorama-karen>img{width:100%;height:55%;object-fit:contain;position:absolute;right:0;top:0;margin:0}.panorama-creative:after,.panorama-guide:after,.panorama-karen:after{background:linear-gradient(0deg,#142c2e 0 38%,#142c2e80 65%,transparent)}.panorama-creative .panorama-copy,.panorama-guide .panorama-copy,.panorama-karen .panorama-copy{top:auto;bottom:28px;transform:none}.panorama-creative h2,.panorama-guide h2,.panorama-karen h2{font-size:29px;margin:15px 0}.panorama-link{margin-top:15px}}

/* Two visual pairs, separated by an editorial pause on the fixed background. */
.business-panoramas .panorama{margin-bottom:0}
.business-panoramas .panorama-altreco,.business-panoramas .panorama-guide{margin-bottom:3px}
.panorama-interlude{min-height:520px;padding:110px 8%;display:flex;align-items:center;background:transparent}
.interlude-copy{max-width:900px;color:#172d31}
.interlude-copy>span{font-family:Arial,Helvetica,sans-serif;font-size:clamp(25px,3.5vw,52px);font-weight:900;letter-spacing:-.04em;line-height:1.1;display:block;margin-bottom:25px}
.interlude-copy h2{font-size:clamp(30px,3.3vw,48px);line-height:1.75;font-weight:700;letter-spacing:.04em;margin:0 0 25px}
.interlude-copy p{font-size:15px;line-height:2.1;font-weight:500;margin:0;color:#283f3e}
@media(max-width:700px){.panorama-interlude{min-height:420px;padding:75px 8%}.interlude-copy>span{font-size:27px;max-width:290px}.interlude-copy h2{font-size:27px;line-height:1.8}.interlude-copy p{font-size:13px}.business-panoramas .panorama-altreco,.business-panoramas .panorama-guide{margin-bottom:3px}}

.business-panoramas .panorama{margin-bottom:0}
.business-panoramas .panorama-altreco,.business-panoramas .panorama-creative{margin-bottom:3px}
.business-panoramas .panorama-guide{margin-bottom:0}

/* Clean seams and individual photographic colour treatments. */
.business-panoramas .panorama,.business-panoramas .panorama-altreco,.business-panoramas .panorama-guide,.business-panoramas .panorama-creative{margin-bottom:0;border:0}
.business-panoramas .panorama-altreco,.business-panoramas .panorama-creative{border-bottom:1px solid #ffffff75}
.panorama-creative{background:#202326}.panorama-creative>img{background:#202326;filter:grayscale(.65) contrast(1.04);object-fit:contain}
.panorama-creative:after{background:linear-gradient(90deg,#202326 0 33%,#202326d9 41%,transparent 68%)}
.panorama-karen{background:#382f2a}.panorama-karen>img{background:#382f2a;filter:saturate(1.05) contrast(1.04) sepia(.12);object-fit:contain}
.panorama-karen:after{background:linear-gradient(90deg,#382f2a 0 33%,#382f2acc 43%,transparent 67%)}
.panorama-guide{background:#202e30}.panorama-guide>img{background:#202e30;filter:saturate(.95) contrast(1.03)}
.panorama-guide:after{background:linear-gradient(90deg,#202e30 0 33%,#202e30b3 44%,transparent 68%)}
.panorama:not(.panorama-altreco)>img{width:55%}
.about{background:transparent;border:0;display:block;padding:100px 8% 120px}
.about>div{max-width:740px}.about .eyebrow{font-weight:600;color:#172d31}
.company-english{font-family:Arial,Helvetica,sans-serif;font-size:clamp(48px,6vw,90px);font-weight:900;letter-spacing:-.055em;line-height:.98;color:#172d31;margin:28px 0}
.about h2{font-family:"Yu Gothic",sans-serif;font-weight:700;font-size:clamp(27px,2.9vw,42px);line-height:1.8;letter-spacing:.025em;color:#172d31;margin:0 0 30px}
.about p{font-weight:500;color:#213c3d;font-size:15px;line-height:2.15;margin-top:25px}
@media(max-width:700px){.panorama:not(.panorama-altreco)>img{width:100%}.panorama-creative:after{background:linear-gradient(0deg,#202326 0 38%,#20232680 65%,transparent)}.panorama-karen:after{background:linear-gradient(0deg,#382f2a 0 38%,#382f2a70 65%,transparent)}.panorama-guide:after{background:linear-gradient(0deg,#202e30 0 38%,#202e3070 65%,transparent)}.about{padding:75px 8%}.company-english{font-size:clamp(42px,11vw,65px)}.about h2{font-size:26px}.about p{font-size:14px}}

/* Supplied Sony model reference, shown without cropping or excessive enlargement. */
.business-panoramas .panorama-altreco,.business-panoramas .panorama-creative{border-bottom:2px solid #15191a}
.panorama-creative{background:#25292a}
.panorama-creative>img{position:absolute;right:4%;top:50%;transform:translateY(-50%);width:min(46%,625px);height:auto;max-height:94%;object-fit:contain;background:none;filter:none;margin:0}
.panorama-creative:after{background:linear-gradient(90deg,#25292a 0 40%,#25292a99 48%,transparent 55%)}
.panorama-creative:hover>img{transform:translateY(-50%)}
.panorama-creative .panorama-copy{max-width:43%;left:7%}
@media(max-width:700px){.panorama-creative{height:540px}.panorama-creative>img{width:auto;max-width:94%;height:53%;max-height:none;top:0;right:3%;transform:none;object-fit:contain}.panorama-creative:hover>img{transform:none}.panorama-creative:after{background:linear-gradient(0deg,#25292a 0 42%,#25292a00 57%)}.panorama-creative .panorama-copy{max-width:86%;left:7%;top:auto;bottom:27px;transform:none}}

.panorama-creative{background:#000}
.panorama-creative>img{position:absolute;inset:0;width:100%;max-width:none;height:100%;max-height:none;object-fit:cover;object-position:center;transform:none;filter:none;background:#000}
.panorama-creative:hover>img{transform:none}.panorama-creative:after{background:linear-gradient(90deg,#0005,transparent 70%)}
@media(max-width:700px){.panorama-creative{height:540px}.panorama-creative>img{inset:0;width:100%;height:64%;object-fit:cover;object-position:72% center;transform:none}.panorama-creative:after{background:linear-gradient(0deg,#000 0 35%,transparent 65%)}.panorama-creative .panorama-copy{bottom:25px}}

/* Override legacy narrow-photo rules specifically for the panoramic rig. */
.business-panoramas .panorama.panorama-creative>img{position:absolute;inset:0;right:0;top:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;object-fit:cover;object-position:center center;transform:none;filter:none}
.business-panoramas .panorama.panorama-creative:hover>img{transform:none}
.business-panoramas .panorama.panorama-creative .panorama-copy{left:7%;max-width:41%;z-index:2}
.business-panoramas .panorama.panorama-creative:after{background:linear-gradient(90deg,#0003,transparent 65%)}
@media(max-width:700px){.business-panoramas .panorama.panorama-creative>img{inset:0;width:100%;height:64%;object-fit:cover;object-position:75% center}.business-panoramas .panorama.panorama-creative .panorama-copy{max-width:86%;top:auto;bottom:27px;transform:none}.business-panoramas .panorama.panorama-creative:after{background:linear-gradient(0deg,#000 0 35%,transparent 65%)}}

/* Full-resolution salon photo, natural warm interior palette. */
.business-panoramas .panorama.panorama-karen{background:#302a27}
.business-panoramas .panorama.panorama-karen>img{position:absolute;inset:0 0 0 auto;width:66%;height:100%;max-width:none;object-fit:cover;object-position:58% 52%;margin:0;filter:none;transform:none}
.business-panoramas .panorama.panorama-karen:after{background:linear-gradient(90deg,#302a27 0 30%,#302a27e6 36%,#302a2759 49%,transparent 67%)}
.business-panoramas .panorama.panorama-karen:hover>img{transform:none}
.business-panoramas .panorama.panorama-karen .panorama-copy{max-width:45%}
@media(max-width:700px){.business-panoramas .panorama.panorama-karen{height:520px}.business-panoramas .panorama.panorama-karen>img{inset:0;width:100%;height:68%;object-position:58% 50%}.business-panoramas .panorama.panorama-karen:after{background:linear-gradient(0deg,#302a27 0 34%,#302a2780 48%,transparent 72%)}.business-panoramas .panorama.panorama-karen .panorama-copy{max-width:86%;top:auto;bottom:27px;transform:none}}

/* Original guide footage still, full width and no additional colour cast. */
.business-panoramas .panorama.panorama-guide{background:#122923}
.business-panoramas .panorama.panorama-guide>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:65% 43%;margin:0;filter:none;transform:none}
.business-panoramas .panorama.panorama-guide:hover>img{transform:none}
.business-panoramas .panorama.panorama-guide:after{background:linear-gradient(90deg,#071c1a99, #071c1a33 45%,transparent 70%)}
.business-panoramas .panorama.panorama-guide .panorama-copy{max-width:43%}
@media(max-width:700px){.business-panoramas .panorama.panorama-guide{height:480px}.business-panoramas .panorama.panorama-guide>img{width:100%;height:100%;object-position:70% center}.business-panoramas .panorama.panorama-guide:after{background:linear-gradient(0deg,#071c1abf,transparent 80%)}.business-panoramas .panorama.panorama-guide .panorama-copy{max-width:86%;top:auto;bottom:30px;transform:none}}

.business-panoramas .panorama.panorama-karen h2.karen-name{font-size:clamp(30px,3.5vw,54px);font-weight:600;letter-spacing:.02em;text-transform:none}
@media(max-width:700px){.business-panoramas .panorama.panorama-karen h2.karen-name{font-size:29px}}

.business-panoramas .panorama.panorama-guide h2.guide-name{font-family:Arial,"Yu Gothic",sans-serif;font-size:clamp(30px,3.8vw,58px);font-weight:700;line-height:1.2;letter-spacing:-.02em;margin:24px 0}
@media(max-width:700px){.business-panoramas .panorama.panorama-guide h2.guide-name{font-size:32px;line-height:1.25}}

/* ALTRECO: unchanged product photograph, integrated wood and landscape plate. */
.business-panoramas .panorama.panorama-altreco{height:clamp(420px,34vw,650px);background:#132026}
.business-panoramas .panorama.panorama-altreco>.panorama-landscape{inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:none}
.business-panoramas .panorama.panorama-altreco:after{background:linear-gradient(90deg,#06141870,transparent 58%);pointer-events:none}
.business-panoramas .panorama.panorama-altreco>.panorama-real-product{position:absolute;right:1.5%;top:50%;width:44%;height:96%;object-fit:contain;object-position:right center;transform:translateY(-50%);border:0;box-shadow:none;filter:none;mask-image:linear-gradient(90deg,transparent 0,#000 12%);z-index:1}
.business-panoramas .panorama.panorama-altreco .panorama-copy{left:7%;max-width:40%;top:50%;transform:translateY(-50%)}
.business-panoramas .panorama.panorama-altreco .panorama-brand{width:clamp(240px,22vw,340px);height:auto;max-width:100%;margin:26px 0 22px;filter:brightness(0) invert(1);object-fit:contain}
.business-panoramas .panorama.panorama-altreco .panorama-copy>span{font-size:11px;letter-spacing:.22em}
.business-panoramas .panorama.panorama-altreco .panorama-copy>p{font-size:16px;letter-spacing:.13em;text-shadow:0 1px 8px #0007}
.business-panoramas .panorama.panorama-altreco .panorama-link{margin-top:25px;font-size:11px;padding-bottom:10px}
.business-panoramas .panorama.panorama-altreco:hover>.panorama-landscape{transform:none}.business-panoramas .panorama.panorama-altreco:hover>.panorama-real-product{transform:translateY(-50%)}
@media(max-width:700px){.business-panoramas .panorama.panorama-altreco{height:650px}.business-panoramas .panorama.panorama-altreco>.panorama-landscape{object-position:35% center}.business-panoramas .panorama.panorama-altreco .panorama-copy{top:35px;left:7%;max-width:86%;transform:none}.business-panoramas .panorama.panorama-altreco .panorama-brand{width:235px;margin:18px 0 15px}.business-panoramas .panorama.panorama-altreco .panorama-copy>p{font-size:13px}.business-panoramas .panorama.panorama-altreco .panorama-link{margin-top:14px}.business-panoramas .panorama.panorama-altreco>.panorama-real-product{top:auto;bottom:0;right:0;width:75%;height:52%;transform:none;object-position:right bottom;mask-image:linear-gradient(90deg,transparent,#000 14%)}.business-panoramas .panorama.panorama-altreco:hover>.panorama-real-product{transform:none}}

/* Complete transparent garment cutout, no edge fading or cropping. */
.business-panoramas .panorama.panorama-altreco>.panorama-real-product{width:46%;height:98%;right:2%;top:50%;bottom:auto;object-fit:contain;object-position:center;transform:translateY(-50%);mask-image:none;-webkit-mask-image:none;border:0;box-shadow:none;filter:drop-shadow(0 12px 18px #0003)}
@media(max-width:700px){.business-panoramas .panorama.panorama-altreco>.panorama-real-product{top:auto;bottom:0;right:0;width:82%;height:54%;transform:none;object-fit:contain;object-position:right bottom;mask-image:none;-webkit-mask-image:none}}

/* Restrained accents: fine rules and link details, consistent headings. */
:root{--rb-vermillion:#cc6744;--rb-gold:#c39b4f}
.service-panel>a{border-top-color:#c8c9c0;position:relative}
.service-panel>a:before{content:'';position:absolute;left:0;top:-1px;width:38px;height:1px;background:var(--rb-vermillion)}
.service-panel>a span{color:#a97135}
.mission-content .underlined,.about .underlined{border-bottom-color:var(--rb-vermillion)}
.panorama .panorama-link{border-bottom-color:var(--rb-gold)}
.interlude-copy>span:before{content:'';display:block;width:48px;height:2px;background:var(--rb-vermillion);margin-bottom:28px}
.contact{border-top:3px solid var(--rb-vermillion)}
.contact a{border-bottom-color:var(--rb-gold)}
header nav a:last-child{border-bottom-color:var(--rb-vermillion)}
.business-panoramas .panorama-altreco,.business-panoramas .panorama-creative{border-bottom:2px solid #15191a}
@media(hover:hover){.service-panel>a:hover,.underlined:hover{color:#995231}.panorama .panorama-link:hover{border-bottom-color:#f0ca82}}

/* Strong corporate signature in the header. */
body>header{height:130px;padding:0 5%;background:#f8f3e8;border-bottom:1px solid #233a3430}
body>header .logo{gap:23px;font-size:clamp(20px,1.7vw,27px);font-weight:700;letter-spacing:.075em;color:#142a29;line-height:1.4}
body>header .logo img{width:112px;height:92px;object-fit:contain;filter:none;mix-blend-mode:multiply;flex-shrink:0}
body>header nav{font-size:12px;font-weight:600}
.hero{padding-top:175px}
@media(max-width:700px){body>header{height:105px;padding:0 5%}body>header .logo{gap:13px;font-size:clamp(15px,3.7vw,20px);letter-spacing:.03em}body>header .logo img{width:76px;height:72px}body>header nav{gap:0}body>header nav a:last-child{font-size:9px;letter-spacing:0;padding:8px 0;margin-left:12px}.hero{padding-top:150px}}
@media(max-width:390px){body>header .logo{gap:9px;font-size:15px}body>header .logo img{width:64px}body>header nav a:last-child{font-size:8px;margin-left:9px}}

/* Transparent header and aligned brand signatures. */
body>header{background:transparent}
body>header .logo{align-items:flex-end}
body>header .logo img{width:112px;height:auto;max-height:none;object-fit:contain;display:block}
body>header .logo span{display:block;line-height:1.1;padding-bottom:3px}
body>footer .logo{display:flex;align-items:flex-end;gap:23px;font-size:22px;font-weight:700;letter-spacing:.06em;color:#f8f3e8}
body>footer .logo img{width:112px;height:auto;max-height:none;object-fit:contain;display:block;filter:invert(1);mix-blend-mode:screen}
body>footer .logo span{line-height:1.1;padding-bottom:3px;display:block}
@media(max-width:700px){body>header .logo img{width:76px;height:auto}body>header .logo span{padding-bottom:2px}body>footer .logo{font-size:18px;gap:16px}body>footer .logo img{width:95px;height:auto}body>footer .logo span{padding-bottom:2px}}
@media(max-width:390px){body>header .logo img{width:64px;height:auto}}

/* Persistent navigation, transparent at top and dark after scrolling. */
body>header{position:fixed;inset:0 0 auto;z-index:100;height:130px;background:transparent;transition:height .25s,background .25s,color .25s;}
body>header.is-scrolled{height:94px;background:rgba(12,25,26,.96);border-bottom:1px solid #ffffff25;color:#f8f3e8}
body>header.is-scrolled .logo{color:#f8f3e8}
body>header.is-scrolled .logo img{filter:invert(1);mix-blend-mode:screen;width:90px}
body>header.is-scrolled nav{color:#f8f3e8}
#business{scroll-margin-top:115px}
@media(max-width:700px){body>header{height:105px}body>header.is-scrolled{height:82px}body>header.is-scrolled .logo img{width:64px}#business{scroll-margin-top:100px}}
@media(prefers-reduced-motion:reduce){body>header{transition:none}}

/* Progressive enhancement: text remains readable without JavaScript. */
.reveal-ready{opacity:0;translate:0 22px;transition:opacity .85s ease,translate 1s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-ready.is-visible{opacity:1;translate:0 0}
.reveal-row{display:block;overflow:clip;padding-bottom:.08em;margin-bottom:-.08em}
.reveal-row>span{display:block;opacity:0;translate:0 105%;transition:translate 1.05s cubic-bezier(.16,1,.3,1),opacity .7s ease;transition-delay:var(--reveal-delay,0ms)}
.reveal-heading.is-visible>.reveal-row>span{opacity:1;translate:0 0}
@media(prefers-reduced-motion:reduce){.reveal-ready,.reveal-row>span{opacity:1;translate:none;transition:none}}

.hero h1 .reveal-row,.hero h1 .reveal-row>span{padding-left:0;white-space:normal}
.mission-english .reveal-row,.company-english .reveal-row{color:inherit}

/* Cool editorial plane and soft elevation over the fixed artwork. */
.mission-section{background:#e5ebed;box-shadow:0 -12px 35px #10282c12,0 25px 55px -20px #10282c55;z-index:1}
.mission-art{background:#e5ebed}
.mission-art img{mix-blend-mode:multiply;opacity:1}
.mission-art:after{background:linear-gradient(90deg,#e5ebed 0%,#e5ebed00 30%)}
.mission-content{isolation:isolate}
.services-columns{filter:drop-shadow(0 16px 18px #10282c20)}
.business-panoramas{position:relative;isolation:isolate}
.business-panoramas .panorama{box-shadow:0 20px 45px -15px #071c244d;z-index:1}
.business-panoramas .panorama-altreco,.business-panoramas .panorama-creative{box-shadow:0 -12px 30px -12px #071c2433;z-index:2}
.business-panoramas .panorama-guide,.business-panoramas .panorama-karen{box-shadow:0 25px 45px -18px #071c2466}
@media(max-width:700px){.mission-art:after{background:linear-gradient(180deg,#e5ebed,transparent 24%)}.mission-section{box-shadow:0 15px 30px -12px #10282c44}.services-columns{filter:drop-shadow(0 10px 12px #10282c20)}}

/* Individual panel elevation and visible upper banner edges. */
.services-columns{filter:none}
.services-columns .service-panel:nth-child(n){box-shadow:0 3px 8px #1023280a,0 20px 36px -12px #10232840}
.business-panoramas .panorama.panorama-altreco,.business-panoramas .panorama.panorama-creative{box-shadow:0 -14px 32px -8px #071c2452;z-index:2}
.business-panoramas .panorama.panorama-guide,.business-panoramas .panorama.panorama-karen{box-shadow:0 22px 40px -12px #071c245c}
@media(max-width:700px){.services-columns .service-panel:nth-child(n){box-shadow:0 3px 7px #1023280a,0 14px 24px -9px #10232840}.business-panoramas .panorama.panorama-altreco,.business-panoramas .panorama.panorama-creative{box-shadow:0 -10px 24px -6px #071c2447}}

/* Responsive finishing: legible text, usable navigation, intact subjects. */
.menu-toggle{display:none}.contact p{font-size:14px;line-height:2;font-weight:500}.contact>a{font-size:16px;min-height:55px;align-items:center}.contact>a span{font-size:23px}.creative-services{font-family:Arial,sans-serif;font-size:12px!important;letter-spacing:.04em!important;color:#d6d9d8;margin-top:14px!important}
body>footer .links a{display:inline-flex;align-items:center;min-height:44px}main a:focus-visible,header a:focus-visible,button:focus-visible{outline:2px solid #c39b4f;outline-offset:6px}
@media(max-width:1000px) and (min-width:701px){body>header .logo{font-size:20px;gap:15px}body>header .logo img{width:90px}body>header nav{gap:20px}.services-columns{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:65px}.service-panel:nth-child(n){min-height:570px}.hero h1{font-size:12vw}.mission-content{max-width:75%}.business-panoramas .panorama.panorama-creative h2{font-size:34px}}
@media(max-width:700px){
 html{scroll-padding-top:92px}body>header{height:92px;padding:0 6%;gap:10px}body>header.is-scrolled{height:78px}body>header .logo{font-size:clamp(14px,3.6vw,19px);gap:12px;min-width:0}body>header .logo img{width:66px}body>header.is-scrolled .logo img{width:58px}body>header .logo span{white-space:nowrap}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:48px;min-height:48px;padding:8px 0 8px 8px;border:0;background:transparent;color:inherit;cursor:pointer;flex-shrink:0}.menu-label{font:600 10px Arial,"Yu Gothic",sans-serif;letter-spacing:.02em}.menu-icon{display:block;width:20px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}.menu-toggle[aria-expanded="true"] .menu-icon{height:1px;border-bottom:0;transform:rotate(-45deg)}
 body>header #main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#142628;color:#fff;padding:18px 6% 25px;border-top:1px solid #ffffff30;box-shadow:0 15px 25px #0002;flex-direction:column;gap:0}
 body>header.menu-open #main-nav{display:flex}body>header #main-nav a,body>header #main-nav a:first-child,body>header #main-nav a:nth-child(2),body>header #main-nav a:last-child{display:flex;align-items:center;min-height:52px;font-size:14px;margin:0;padding:12px 0;border:0;background:none;letter-spacing:.06em;border-bottom:1px solid #ffffff25}
 .hero{min-height:680px;height:auto;padding:140px 7% 80px}.hero-lead{font-size:clamp(18px,5vw,26px);line-height:1.6}.hero-english>p{font-size:clamp(17px,5vw,24px)}.hero h1{font-size:clamp(68px,20vw,140px);line-height:.92;letter-spacing:-.065em}.hero-translation{font-size:12px;line-height:1.8;letter-spacing:.04em}.jump{font-size:9px;bottom:25px}
 .mission-section{padding-top:65px}.mission-content{max-width:100%;min-width:0}.mission-english{font-size:clamp(30px,8.1vw,57px);letter-spacing:-.06em}.mission-content h2{font-size:clamp(22px,5.5vw,32px)}.mission-content p,.service-panel p,.about p{font-size:14px;line-height:2;font-weight:500}.mission-content p.mission-lead{font-size:16px}.mission-art{height:280px}.mission-art img{object-position:72% center}
 .services-columns{grid-template-columns:1fr;gap:60px}.services-overview{padding:65px 7% 75px}.services-heading h2{font-size:clamp(35px,10vw,60px)}.services-heading>p{font-size:20px}.service-panel:nth-child(n){padding:34px 25px 26px;min-height:0}.service-en{font-size:36px}.service-panel h3{font-size:14px}.service-panel>a{min-height:50px;align-items:center;font-size:13px}.brand-logo{width:170px;height:70px}
 .business-panoramas .panorama.panorama-altreco{height:650px}.business-panoramas .panorama.panorama-altreco .panorama-copy{top:32px;max-width:86%}.business-panoramas .panorama.panorama-altreco .panorama-brand{width:220px}.business-panoramas .panorama.panorama-altreco>.panorama-real-product{width:90%;height:55%;right:0;bottom:5px;object-position:center bottom}
 .business-panoramas .panorama.panorama-guide{height:530px}.business-panoramas .panorama.panorama-guide>img{object-position:72% center}.business-panoramas .panorama.panorama-guide .panorama-copy{bottom:28px}.business-panoramas .panorama.panorama-guide h2.guide-name{font-size:31px}
 .panorama-interlude{min-height:400px;padding:70px 8%}.interlude-copy>span{font-size:clamp(24px,6.8vw,36px)}.interlude-copy h2{font-size:27px}.interlude-copy p{font-size:14px}
 .business-panoramas .panorama.panorama-creative{height:560px}.business-panoramas .panorama.panorama-creative>img{height:61%;object-position:78% center}.business-panoramas .panorama.panorama-creative .panorama-copy{max-width:86%;bottom:25px}.business-panoramas .panorama.panorama-creative h2{font-size:clamp(26px,7vw,36px);margin:15px 0}.creative-services{font-size:11px!important}
 .business-panoramas .panorama.panorama-karen{height:540px}.business-panoramas .panorama.panorama-karen>img{height:68%;object-position:60% center}.business-panoramas .panorama.panorama-karen h2.karen-name{font-size:32px}.panorama-link{min-height:44px;display:inline-flex;align-items:center;padding:10px 35px 10px 0;font-size:12px}
 .about{padding:75px 8%}.company-english{font-size:clamp(36px,10vw,62px)}.about h2{font-size:26px}.underlined{display:inline-flex;align-items:center;min-height:44px;font-size:12px}.contact{padding:60px 8%;gap:20px}.contact h2{font-size:52px}.contact p{font-size:14px;line-height:2}.contact p br{display:none}.contact>a{width:100%;font-size:16px;min-height:60px}footer{padding:35px 8%}.contact,footer{overflow-wrap:anywhere}body>footer .links{font-size:12px;gap:25px}
}
@media(max-width:360px){.menu-label{display:none}body>header .logo{font-size:14px;gap:9px}body>header .logo img{width:58px}.hero h1{font-size:20vw}.mission-english{font-size:8vw}}

body.admin-bar>header{top:32px}@media(max-width:782px){body.admin-bar>header{top:46px}}

/* Clearer first-view navigation and shorter business introductions. */
body>header:not(.is-scrolled){background:rgba(246,241,229,.96);color:#172e30;box-shadow:0 2px 14px #132f2910}
.hero .hero-summary{max-width:560px;margin:20px 0 0;font-size:14px;font-weight:600;line-height:1.9;letter-spacing:.025em;color:#173635}
.hero-shortcut{display:none}
.service-panel:nth-child(n){min-height:430px}.service-panel p{margin-bottom:24px}.service-panel .service-tags{margin-top:0}
@media(max-width:1100px) and (min-width:701px){.service-panel:nth-child(n){min-height:470px}}
@media(max-width:700px){.hero .hero-summary{font-size:12px;line-height:1.9;max-width:100%;margin-top:17px;letter-spacing:0}.hero-shortcut{display:inline-flex;align-items:center;gap:30px;min-height:44px;font-size:11px;font-weight:700;border-bottom:1px solid #ad7747;margin-top:12px}.hero .jump{display:none}.service-panel:nth-child(n){min-height:0;padding:29px 25px 23px}.service-panel p{font-size:13px;line-height:2;margin:18px 0}.services-columns{gap:22px}.business-panoramas .panorama.panorama-altreco{height:480px}.business-panoramas .panorama.panorama-altreco>.panorama-real-product{height:51%}.business-panoramas .panorama.panorama-guide{height:410px}.business-panoramas .panorama.panorama-creative{height:430px}.business-panoramas .panorama.panorama-karen{height:410px}.panorama-interlude{min-height:280px;padding:55px 8%}}
