/* VX website: works, information and LINE consultation. */
body:not(.menu-open):not(.vx-work-open){overflow-x:clip;overflow-y:visible}
.vx-price-notes{scroll-margin-top:160px}
.vx-page-intro{padding:132px 0 36px;background:#0b0c0edb}
.vx-page-intro h1{font:400 clamp(30px,4vw,46px)/1.4 var(--serif);letter-spacing:.06em;margin:0}
.vx-page-intro p{max-width:720px;color:#bdb8af;font-size:16px;line-height:1.9}
.vx-page-intro .eyebrow{margin-bottom:12px}
.vx-quick-nav{display:flex;gap:0;margin-top:28px;max-width:540px;border-block:1px solid #c4b08a55}
.vx-quick-nav a{flex:1;display:flex;align-items:center;justify-content:center;min-height:54px;font-size:15px;letter-spacing:.06em}
.vx-quick-nav a+a{border-left:1px solid #c4b08a33}
.hero.vx-home-hero{min-height:640px;min-height:min(780px,88svh)}
.vx-home-hero .hero-content{padding:140px 0 64px}
.vx-home-hero .hero-truth{margin-top:18px}
.vx-home-hero .hero-lead{margin-top:24px}
.vx-editorial{padding:76px 0;background:#0b0c0ee8;border-top:1px solid #c4b08a24}
.vx-section-title{font:400 clamp(27px,3vw,40px)/1.5 var(--serif);margin:0 0 20px;letter-spacing:.05em}
.vx-featured{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,480px);justify-content:center;align-items:center;gap:clamp(36px,7vw,110px)}
.vx-featured h3{font:400 clamp(25px,3vw,38px)/1.5 var(--serif);margin:12px 0;color:#e7e4dc}
.vx-featured p{font-size:16px;color:#bdbbb3;line-height:1.9}
.vx-featured .vx-work-card{max-width:340px}
.vx-featured .vx-folio-cover{--vx-work-gold:#c4b08a}
.vx-meta{color:#a6a298!important;font-size:13px!important;line-height:1.8;letter-spacing:.02em}
.vx-text-link{display:inline-flex;align-items:center;min-height:44px;font-size:15px;color:#d4bd93;border-bottom:1px solid #c4b08a55}
.vx-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px}
.vx-info-panel{padding:28px 0;border-top:1px solid #c4b08a55}
.vx-info-panel h3{font:400 25px/1.5 var(--serif);margin:12px 0}
.vx-info-panel p{color:#bcb8af;font-size:16px;line-height:1.85;max-width:560px}
.vx-info-panel .button-row{margin-top:20px}
.vx-brand-links{display:flex;flex-wrap:wrap;gap:14px 32px}
.vx-price-nav{position:sticky;top:var(--header);z-index:15;background:#111113f7;border-block:1px solid #c4b08a33;backdrop-filter:blur(14px)}
.vx-price-nav .shell{display:flex;overflow-x:auto;scrollbar-width:thin;gap:8px;padding-block:10px}
.vx-price-nav a{flex:none;display:flex;align-items:center;min-height:44px;padding:0 16px;font-size:14px;border:1px solid #c4b08a33}
.vx-price-nav a:hover,.vx-price-nav a:focus-visible{background:#c4b08a18;border-color:#c4b08a}
.vx-prices{padding:42px 0 64px;background:#0b0c0eee}
.vx-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 64px}
.vx-price-category{scroll-margin-top:160px;border-top:1px solid #c4b08a44;padding-top:22px}
.vx-price-category h2{font:400 25px/1.5 var(--serif);margin:0 0 12px}
.vx-price-category .price-row{gap:12px;align-items:baseline}
.vx-price-category .price-row strong{font:400 16px/1.8 var(--sans)}
.vx-price-category .amount{font:400 18px/1.8 var(--sans)}
.vx-price-category .amount small{display:inline;font-size:12px;margin-left:5px}
.vx-price-category .vx-text-link{margin-top:14px;font-size:14px}
.vx-price-notes{padding:24px 28px;border:1px solid #c4b08a33;margin-top:40px;background:#151516}
.vx-price-notes h2{font:400 23px/1.5 var(--serif);margin:0 0 12px}
.vx-price-notes p{color:#beb9af;font-size:15px;line-height:1.9;margin:10px 0}
.vx-price-notes details{border-top:1px solid #c4b08a26;padding:12px 0}
.vx-price-notes summary{cursor:pointer;min-height:36px;line-height:1.8;color:#e5ded2}
.vx-service-projects{scroll-margin-top:160px;padding:56px 0;border-top:1px solid #c4b08a33}
.vx-service-projects .vx-info-grid{gap:0 42px}
.vx-service-project{padding:24px 0;border-bottom:1px solid #c4b08a33}
.vx-service-project h3{font:400 23px/1.5 var(--serif);margin:0 0 8px}
.vx-service-project p{font-size:15px;color:#bdb8af;line-height:1.8;margin:8px 0}
.vx-service-project .vx-price{font-size:18px;color:#e3d4b7}
.vx-project-directions .project-path-row{grid-template-columns:minmax(220px,.9fr) minmax(260px,1fr) 180px}
.vx-project-directions .project-path-letter,.vx-project-directions .sessions{display:none}
.vx-project-directions .project-path-row>div:nth-child(2){grid-column:auto}
.vx-project-directions .project-path-row>div:nth-child(3),.vx-project-directions .project-path-row>div:nth-child(4){grid-column:auto;padding-left:24px}
.vx-campaign-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}
.vx-campaign-filters button{cursor:pointer;background:none;color:#beb8ad;border:1px solid #c4b08a44;min-height:44px;padding:8px 18px;font:inherit}
.vx-campaign-filters button[aria-pressed=true]{background:#c4b08a;color:#111;border-color:#c4b08a}
.vx-empty{padding:38px 0 60px;border-top:1px solid #c4b08a33}
.vx-empty h2{font:400 26px/1.5 var(--serif);margin:0 0 12px}.vx-empty p{color:#bdb8af;line-height:1.9}
.vx-status{font-size:12px;letter-spacing:.1em;color:#d4bd93;border:1px solid #c4b08a55;display:inline-block;padding:4px 10px}
.vx-campaign{padding:30px 0;border-top:1px solid #c4b08a44;scroll-margin-top:110px}
.vx-campaign h2{font:400 30px/1.5 var(--serif)}
.vx-campaign p{line-height:1.9;color:#bdb8af}
.vx-campaign summary{min-height:48px;cursor:pointer;color:#d4bd93}
.vx-campaign dl>div{display:grid;grid-template-columns:130px 1fr;padding:16px 0;border-top:1px solid #c4b08a22;gap:24px}
.vx-campaign dt{color:#d4bd93}.vx-campaign dd{margin:0;white-space:pre-line;line-height:1.9}
.vx-mobile-actions{display:none}
.display,.footer-brand,.project-card h3,.card h3{overflow-wrap:anywhere}
.desktop-nav{gap:18px}.desktop-nav a{font-size:12px}
.vx-works .vx-collection-end a{min-height:44px;display:flex;align-items:center}
.vx-work-context{border-top:1px solid #c4b08a33;margin-top:24px;padding-top:20px}
.vx-work-context .vx-text-link{font-size:14px}
@media(max-width:1050px){.vx-project-directions .project-path-row{grid-template-columns:minmax(180px,1fr) minmax(220px,1.1fr) 160px}}
@media(max-width:720px){
  body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
  .hero.vx-home-hero{min-height:540px;min-height:min(650px,78svh)}
  .vx-home-hero .hero-content{padding:110px 0 42px}
  .vx-home-hero .brand-code{font-size:9px;letter-spacing:.16em;margin-bottom:20px}
  .vx-home-hero .hero-lead{font-size:21px;max-width:270px}
  .vx-quick-nav{margin-top:26px}.vx-quick-nav a{font-size:14px;min-height:50px}
  .vx-editorial{padding:46px 0}
  .vx-featured{grid-template-columns:1fr;gap:22px}
  .vx-featured .vx-work-card{width:min(100%,300px);margin:auto}
  .vx-featured h3{font-size:27px}.vx-featured p{font-size:15px}
  .vx-featured .button-row{margin-top:22px}
  .vx-info-grid{grid-template-columns:1fr;gap:22px}
  .vx-info-panel{padding:20px 0 8px}
  .vx-page-intro{padding:105px 0 24px}
  .vx-page-intro h1{font-size:30px}
  .vx-price-nav a{padding:0 13px;font-size:14px}
  .vx-prices{padding:30px 0 46px}
  .vx-price-grid{grid-template-columns:1fr;gap:32px}
  .vx-price-notes{padding:22px 18px;margin-top:30px}
  .vx-service-projects{padding:36px 0}
  .vx-service-projects .vx-info-grid{gap:0}
  .vx-project-directions .project-path-row{grid-template-columns:1fr}
  .vx-project-directions .project-path-row>div{grid-column:1!important;grid-row:auto!important;border-right:0;padding:18px 22px!important}
  .vx-project-directions .project-path-row>div:nth-child(4){border-bottom:0}
  .display-lg{font-size:clamp(27px,7.4vw,44px);line-height:1.08;letter-spacing:.02em}
  .display-long{font-size:clamp(25px,6.9vw,38px);line-height:1.08}
  .display-xl{font-size:clamp(38px,10.3vw,60px);line-height:1.06}
  .footer-brand{font-size:27px}
  .vx-mobile-actions{position:fixed;inset:auto 0 0;z-index:80;display:grid;grid-template-columns:1fr 1.4fr;gap:10px;padding:9px 18px calc(9px + env(safe-area-inset-bottom));background:#0a0b0ef5;border-top:1px solid #c4b08a44;backdrop-filter:blur(12px)}
  .vx-mobile-actions a{display:flex;justify-content:center;align-items:center;min-height:46px;font-size:14px;border:1px solid #c4b08a55}
  .vx-mobile-actions a:last-child{background:#c4b08a;color:#111;border-color:#c4b08a}
  body.vx-work-open .vx-mobile-actions,body.menu-open .vx-mobile-actions{display:none}
  .mobile-drawer .drawer-inner{padding-bottom:calc(30px + env(safe-area-inset-bottom))}
  .vx-campaign dl>div{grid-template-columns:1fr;gap:8px}
  .vx-empty{padding-top:26px}.vx-empty h2{font-size:24px}
}
