:root{--black:#050505;--white:#fefefe;--grey:#a2a2a2;--line:#d5d5d5;--ox:#461a24;--shell:min(1500px,calc(100% - 64px))}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#050505}body{margin:0;color:var(--black);background:var(--white);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;width:100%;height:auto}.f-shell{width:var(--shell);margin-inline:auto}.f-nav{height:74px;border-bottom:1px solid var(--line);background:rgba(254,254,254,.94);position:fixed;z-index:30;top:0;width:100%;backdrop-filter:blur(16px)}.f-nav .f-shell{height:100%;display:flex;align-items:center;gap:30px}.f-logo{margin-right:auto;font-size:.9rem;font-weight:900;letter-spacing:.22em}.f-links{display:flex;gap:26px;font-size:.7rem;font-weight:800;text-transform:uppercase}.f-nav-cta{padding:12px 16px!important;color:#fff;background:#050505}.f-lang{font-size:.7rem}.f-menu{display:none;background:none;border:0}.f-hero{position:relative;min-height:820px;height:100svh;padding-top:74px;display:grid;align-items:center;background:#fff;overflow:hidden}.f-hero-word{position:absolute;z-index:1;top:50%;left:50%;margin:0;font-size:clamp(7rem,20vw,19rem);font-weight:900;letter-spacing:-.09em;line-height:.72;white-space:nowrap;transform:translate(-50%,-46%)}.f-hero-portrait{position:absolute;z-index:2;bottom:0;left:50%;width:min(39vw,590px);height:calc(100% - 108px);object-fit:cover;object-position:50% 18%;transform:translateX(-50%);filter:grayscale(1)}.f-hero-copy{position:relative;z-index:3;height:100%;padding:86px 0 42px;display:grid;align-content:end;gap:24px;grid-template-columns:1fr 1fr}.f-eyebrow{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.f-hero-copy>div:last-child{justify-self:end;max-width:330px}.f-hero-copy p{line-height:1.6}.f-button{display:inline-flex;min-height:48px;padding:0 18px;align-items:center;justify-content:center;color:#fff;background:#050505;border:1px solid #050505;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.f-strip{display:grid;color:#fff;background:#050505;border-top:1px solid #333;grid-template-columns:repeat(4,1fr)}.f-strip div{padding:26px;border-right:1px solid #333}.f-strip strong,.f-strip span{display:block}.f-strip strong{font-size:1.45rem}.f-strip span{margin-top:5px;color:#999;font-size:.65rem;text-transform:uppercase}.f-section{padding:120px 0}.f-head{display:grid;gap:40px;align-items:end;grid-template-columns:1fr minmax(280px,520px);margin-bottom:60px}.f-head h2{margin:0;font-size:clamp(4rem,9vw,9rem);font-weight:900;letter-spacing:-.08em;line-height:.76;text-transform:uppercase}.f-head p{margin:0;line-height:1.7}.f-about-grid{display:grid;gap:24px;grid-template-columns:.75fr 1.25fr}.f-about-grid figure{margin:0}.f-about-grid figure:first-child img{aspect-ratio:4/5;object-fit:cover;filter:grayscale(1)}.f-about-copy{padding:clamp(32px,6vw,80px);color:#fff;background:#050505}.f-about-copy h3{margin:0 0 25px;font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.06em;line-height:.9;text-transform:uppercase}.f-about-copy p{color:#bbb;line-height:1.8}.f-timeline{display:grid;margin-top:50px;border-top:1px solid #444;grid-template-columns:repeat(4,1fr)}.f-timeline div{padding:20px 10px 0 0}.f-timeline strong,.f-timeline span{display:block}.f-timeline span{margin-top:5px;color:#888;font-size:.7rem}.f-work{color:#fff;background:#050505}.f-work .f-head p{color:#aaa}.f-cases{display:grid;gap:2px;background:#333;grid-template-columns:1.3fr .7fr}.f-case{position:relative;min-height:650px;background:#111;overflow:hidden}.f-case img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform .6s}.f-case:hover img{transform:scale(1.02)}.f-case:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),transparent 60%);content:""}.f-case-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;padding:30px}.f-case-copy span{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.f-case-copy h3{margin:9px 0;font-size:2.2rem}.f-case-copy p{max-width:560px;color:#bbb}.f-services{display:grid;border-top:1px solid var(--line)}.f-service{display:grid;padding:28px 0;align-items:center;border-bottom:1px solid var(--line);grid-template-columns:70px 1fr 220px 110px}.f-service span{font-size:.7rem}.f-service h3{margin:0;font-size:1.6rem}.f-service p{margin:0;color:#666}.f-service strong{text-align:right}.f-book{color:#fff;background:var(--ox)}.f-book .f-head p{color:#dbc8cc}.f-book-grid{display:grid;gap:50px;grid-template-columns:.7fr 1.3fr}.f-book-intro h2{margin:0 0 25px;font-size:clamp(3rem,7vw,7rem);letter-spacing:-.08em;line-height:.78;text-transform:uppercase}.f-book-intro p{color:#dbc8cc;line-height:1.7}.f-book-form{padding:34px;color:#050505;background:#fff}.f-step{padding:20px 0;border-bottom:1px solid var(--line)}.f-step h3{margin:0 0 15px;font-size:1rem}.f-options{display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}.f-option{padding:15px;text-align:left;background:#fff;border:1px solid var(--line)}.f-option strong,.f-option span{display:block}.f-option span{margin-top:4px;color:#777;font-size:.7rem}.f-option.is-selected{color:#fff;background:#050505}.f-days,.f-slots{display:flex;gap:8px;overflow:auto}.f-day,.f-slot{min-width:72px;padding:11px;background:#fff;border:1px solid var(--line)}.f-day span,.f-day strong{display:block}.f-day span{font-size:.6rem;text-transform:uppercase}.f-day strong{font-size:1.3rem}.f-day.is-selected,.f-slot.is-selected{color:#fff;background:var(--ox);border-color:var(--ox)}.f-fields{display:grid;gap:10px;grid-template-columns:1fr 1fr}.f-field{display:grid;gap:6px;font-size:.7rem;font-weight:700}.f-field input,.f-field select,.f-field textarea{width:100%;min-height:46px;padding:10px;background:#f7f7f7;border:1px solid var(--line)}.f-field:last-child{grid-column:1/-1}.f-summary{margin:18px 0;padding:15px;color:#fff;background:#050505}.f-result{margin-top:15px;padding:20px;color:#fff;background:#050505}.f-footer{padding:90px 0 110px;color:#fff;background:#050505}.f-footer h2{margin:0;font-size:clamp(4rem,11vw,11rem);letter-spacing:-.09em;line-height:.72;text-transform:uppercase}.f-footer-grid{display:grid;gap:30px;grid-template-columns:1fr auto;margin-top:50px}.f-footer nav{display:grid;gap:10px;grid-template-columns:1fr 1fr}.f-footer small{color:#777}
@media(max-width:900px){:root{--shell:min(100% - 32px,720px)}.f-links{display:none;position:fixed;top:74px;left:0;width:100%;padding:28px;flex-direction:column;background:#fff}body.menu-open .f-links{display:flex}.f-menu{display:block}.f-hero{min-height:700px}.f-hero-word{top:28%;font-size:25vw}.f-hero-portrait{width:70vw;height:72%}.f-hero-copy{grid-template-columns:1fr}.f-hero-copy>div:last-child{justify-self:start}.f-strip,.f-head,.f-about-grid,.f-cases,.f-book-grid,.f-footer-grid{grid-template-columns:1fr}.f-strip{grid-template-columns:1fr 1fr}.f-case{min-height:500px}.f-service{gap:12px;grid-template-columns:40px 1fr auto}.f-service p{grid-column:2}.f-service strong{grid-column:3;grid-row:1/3}.f-timeline{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.f-section{padding:80px 0}.f-hero-word{top:24%;font-size:27vw}.f-hero-portrait{width:90vw}.f-head{margin-bottom:40px}.f-head h2{font-size:3.6rem}.f-options,.f-fields{grid-template-columns:1fr}.f-field:last-child{grid-column:auto}.f-book-form{padding:20px}.f-footer nav{grid-template-columns:1fr}}
.f-book-grid>*{min-width:0}
html,body{overflow-x:clip}
.f-option span{color:#666}

.f-hero-word{
  left:clamp(32px,6vw,100px);
  width:33vw;
  max-width:5ch;
  font-size:clamp(6rem,10.5vw,10rem);
  line-height:.78;
  white-space:normal;
  text-wrap:balance;
  transform:translateY(-50%);
}
.f-hero-portrait{left:52%;width:min(36vw,550px)}
.f-nav a{min-height:44px;display:inline-flex;align-items:center}
.f-menu{min-height:44px;align-items:center}
.f-lang{min-width:44px;justify-content:center}
.f-menu{padding:8px 0 8px 12px}
body.menu-open .portfolio-demo-toolbar,
body.menu-open .himura-whatsapp{display:none!important}
.f-section{scroll-margin-top:88px}

@media(max-width:900px){
  .f-menu{display:inline-flex}
  .f-hero{
    height:auto;
    min-height:0;
    padding:74px 16px 96px;
    display:flex;
    align-items:stretch;
    flex-direction:column;
  }
  .f-hero-word{
    position:relative;
    top:auto;
    left:auto;
    width:100%;
    max-width:none;
    margin:36px 0 16px;
    font-size:17vw;
    line-height:.82;
    white-space:nowrap;
    transform:none;
  }
  .f-hero-portrait{
    position:relative;
    bottom:auto;
    left:auto;
    width:100%;
    height:auto;
    aspect-ratio:7/8;
    object-position:50% 20%;
    transform:none;
  }
  .f-hero-copy{
    width:100%;
    height:auto;
    padding:24px 0 0;
    gap:16px;
  }
  .f-hero-copy>div:last-child{max-width:36rem}
  .f-hero-copy>div:last-child p{margin:0 0 14px}
  .f-links a{width:100%;min-height:48px}
}

@media(max-width:560px){
  .f-footer nav a{min-height:44px;display:flex;align-items:center}
  .f-head h2{
    font-size:clamp(2.65rem,13.5vw,3.2rem);
    line-height:.84;
    overflow-wrap:anywhere;
    text-wrap:balance;
  }
  .f-service{grid-template-columns:32px minmax(0,1fr)}
  .f-service p,.f-service strong{grid-column:2;grid-row:auto;text-align:left}
  .f-service strong{margin-top:8px}
  .f-footer h2{font-size:3.65rem}
}
