@import url('ymg-showcase.css');

/* Client revision: retain brand styles, give each section a clear reading space. */
@media(min-width:901px){
  .hero-stage .hero{text-align:left;padding-block:64px}
  .hero-stage .hero h1{margin:18px 0 0;max-width:680px;width:64%}
  .hero-stage .hero-bottom{align-items:flex-start;gap:24px}
  .hero-stage .hero-copy{max-width:570px;width:60%}
  .hero-stage .hero-links{justify-content:flex-start}
}
.section{padding-block:104px}
.section-top{margin-bottom:40px}
.approach{padding-block:104px;gap:96px}
.approach .comparison{max-width:none;justify-self:stretch;padding-top:64px}
.approach .comparison>.section{width:100%}
.approach #benefit{width:100%;margin:0}
.approach .comparison .section-top{max-width:none}
.collab-grid{gap:32px}
.workflow{margin-top:64px}
.team-layout{gap:64px;align-items:center}
main>.certificate.shell{padding-bottom:0}
main>.certificate .certificate-inner{padding-top:40px;padding-bottom:40px}
.contact{padding-block:88px}
.portfolio>.section{padding-block:104px}
.portfolio{scroll-margin-top:-104px}
.portfolio .section-top>div{gap:48px}
.portfolio .section-top h2{font-size:clamp(32px,2.65vw,42px)}
.portfolio .section-top .body{font-size:17px}
.work-list{grid-template-columns:1fr 1.1fr;gap:24px 40px}
.work-image img{object-fit:contain!important;object-position:center!important;aspect-ratio:auto!important;max-height:none!important}
.work-body h3{font-size:25px;margin-top:14px}
.work-description{font-size:16px;line-height:1.5;margin-top:10px}
.work-tags{font-size:14px}
.work-details{margin-top:4px}
.view-image{bottom:8px;right:8px;font-size:13px;padding:7px 10px}
.more-portfolio{margin-top:40px}
.more-projects{margin-top:0;margin-bottom:32px}
.portfolio-toggle{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:14px 24px;border:1px solid #c1d5ee;background:var(--light);color:var(--blue);font-size:16px;font-weight:600}
.portfolio-toggle:hover{background:#dfecff}
.work-details>summary{list-style:none;text-decoration:underline;text-underline-offset:4px}
.work-details>summary::-webkit-details-marker{display:none}
.logo-controls{flex-wrap:wrap}
.compare-mobile{display:none}
.site-footer{background:#f4f8fc;border-top:1px solid var(--line)}
.site-footer .footer-grid{display:grid;grid-template-columns:1.2fr 1fr .75fr 1.3fr;gap:36px;padding-block:64px 48px}
.site-footer .footer-grid>*{min-width:0}
.footer-logo{display:inline-flex;min-height:48px;align-items:center}
.footer-logo img{width:110px;height:48px;object-fit:contain}
.footer-name{margin-top:22px;font-weight:700;font-size:19px}
.footer-tagline{margin-top:6px;font-size:16px;line-height:1.6;color:var(--muted);max-width:260px}
.footer-social{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;color:var(--blue)}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #c7d6e8;border-radius:50%;background:transparent;transition:background .18s,color .18s,border-color .18s}
.footer-social svg{width:22px;height:22px}
.site-footer .footer-social a:hover,.site-footer .footer-social a:focus-visible{color:#fff;background:var(--blue);border-color:var(--blue);text-decoration:none}
.footer-column h2{font-size:18px;letter-spacing:0;line-height:1.4;margin-bottom:20px}
.footer-column ul{list-style:none;margin:0;padding:0}
.footer-column li a{display:block;padding-block:10px;font-size:16px;line-height:1.5;min-height:44px;color:var(--muted)}
.site-footer a:hover{color:var(--blue);text-decoration:none}
.footer-contact address{font-style:normal;display:grid;gap:18px}
.footer-contact address a{display:block;font-size:16px;line-height:1.6;min-height:44px;overflow-wrap:anywhere}
.footer-contact address span{display:block;font-size:13px;color:var(--muted);margin-bottom:3px}
.site-footer .footer-bottom{padding-block:24px 30px;font-size:14px}
@media(max-width:1100px){
  .site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:40px 56px}
}
@media(max-width:600px){
  .site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px;padding-block:44px 36px}
  .footer-identity,.footer-contact{grid-column:1/-1}
  .footer-identity{padding-bottom:28px;border-bottom:1px solid var(--line)}
  .footer-tagline{max-width:310px}
  .footer-name{margin-top:16px}
  .footer-social{margin-top:14px}
  .footer-column h2{margin-bottom:14px}
  .footer-contact{padding-top:28px;border-top:1px solid var(--line)}
  .site-footer .footer-bottom{font-size:13px;line-height:1.6}
}
.menu-button:after{display:none}
.menu-icon{position:relative;display:block;width:22px;height:18px}
.menu-icon>span{position:absolute;left:0;top:8px;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .26s ease,opacity .18s ease}
.menu-icon>span:first-child{transform:translateY(-7px)}
.menu-icon>span:last-child{transform:translateY(7px)}
.menu-button[aria-expanded=true] .menu-icon>span:first-child{transform:rotate(45deg)}
.menu-button[aria-expanded=true] .menu-icon>span:nth-child(2){opacity:0}
.menu-button[aria-expanded=true] .menu-icon>span:last-child{transform:rotate(-45deg)}
@media(max-width:900px){
  .menu-button{gap:14px;min-height:46px;padding:10px 14px;border-radius:4px;color:var(--blue);background:#f4f8ff;border-color:#d4deea}
  .menu-button:hover,.menu-button[aria-expanded=true]{background:#e9f2ff}
  .nav{position:absolute;top:100%;left:calc(-1 * var(--pad));right:calc(-1 * var(--pad));width:auto;padding:16px var(--pad) 24px;background:white;border-bottom:1px solid var(--line);box-shadow:0 14px 20px #132b4310;max-height:calc(100dvh - 90px)}
}

@media(min-width:1001px){
  .work-list>.work-item:first-child .work-image img{height:clamp(240px,34vh,350px)}
  .work-list>.work-item:not(:first-child){display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:20px;align-items:start}
  .work-list>.work-item:not(:first-child) .work-image img{height:clamp(176px,23vh,230px)}
  .work-list>.work-item:not(:first-child) .work-body h3{margin-top:0}
}
@media(min-width:601px) and (max-width:1000px){
  .work-list{grid-template-columns:1fr 1fr;gap:30px}
  .work-image img{height:220px}
  .work-list>.work-item:first-child .work-image img{height:340px}
}
@media(max-width:1000px){
  .section,.portfolio>.section{padding-block:80px}
  .portfolio{scroll-margin-top:-80px}
  .approach{padding-block:80px;gap:80px}
  .team-layout{gap:36px}
}
@media(max-width:600px){
  .hero-stage{background-image:url('revisi-assets/Branding%20YMG%20potrait%20mobile.jpg')}
  .approach .compare-table{display:none}
  .compare-mobile{display:grid;gap:28px}
  .compare-group{width:100%;table-layout:fixed;border-collapse:collapse;text-align:left;background:#f4f6f8;color:#586473}
  .compare-group .aspect-column{width:38%}
  .compare-group th,.compare-group td{padding:16px 12px;font-size:16px;line-height:1.5;vertical-align:top;border-bottom:1px solid #d4deea}
  .compare-group thead th{background:#e9edf2;font-weight:700}
  .compare-group tbody th{font-weight:600}
  .compare-group-ymg{background:var(--blue);color:white}
  .compare-group-ymg thead th{background:#003c96}
  .compare-group-ymg th,.compare-group-ymg td{border-color:#ffffff38}
  .compare-group-ymg td{font-weight:600}
  .compare-note{font-size:14px;color:var(--muted)}
  .section,.portfolio>.section{padding-block:72px}
  .portfolio{scroll-margin-top:-72px}
  .section-top{margin-bottom:32px}
  .portfolio .section-top>div{gap:24px}
  .portfolio .section-top h2{font-size:33px}
  .work-list{display:block}
  .work-item+.work-item{margin-top:44px;padding-top:32px;border-top:1px solid var(--line)}
  .work-image img{height:auto;max-height:340px!important}
  .work-body h3{margin-top:20px;font-size:26px}
  .work-tags{margin-top:8px}
  .work-description{margin-top:14px;font-size:17px;line-height:1.6}
  .work-details{margin-top:10px}
  .more-portfolio{margin-top:36px}
  .more-projects{padding-top:32px;border-top:1px solid var(--line)}
  .approach{padding-block:72px;gap:72px}
  .approach .comparison{padding-top:48px}
  .approach .benefit-list{gap:36px}
  .approach .benefit-row{padding-top:24px}
  .collab-grid{gap:28px}
  .collab-mode{padding:30px 24px}
  .workflow{margin-top:48px;gap:28px}
  .team-layout{gap:32px}
  main>.certificate .certificate-inner{padding-block:32px;gap:24px}
  .contact{padding-block:72px}
  .detail-columns{gap:44px}
}
