@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Instrument+Serif:ital@0;1&display=swap');
:root{--gg-bg:#0b1115;--gg-panel:#121b20;--gg-panel2:#172228;--gg-ink:#eef3ef;--gg-sage:#bddac7;--gg-muted:#aab5b5;--gg-faint:#7b8b8d;--gg-border:rgba(219,237,223,.14);--gg-serif:'Instrument Serif',Georgia,serif;--gg-sans:'Manrope',system-ui,sans-serif;--gg-ease:cubic-bezier(.2,.8,.2,1)}
html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--gg-bg);color:var(--gg-ink);font-family:var(--gg-sans);-webkit-font-smoothing:antialiased}body *{box-sizing:border-box}body a{color:inherit;text-decoration:none}body a:hover{color:var(--gg-sage)}body img{max-width:100%;height:auto}::selection{background:var(--gg-sage);color:#0b1115}
.gg-main{margin:0!important;padding:0!important;max-width:none!important}.gg-main>.wp-block-post-content{margin:0;max-width:none!important}.gg-main .wp-block-post-content>*{margin-block-start:0!important;margin-block-end:0!important}.gg-shell{width:min(100%,1380px)!important;margin-inline:auto!important;padding-inline:clamp(22px,6vw,94px)!important;max-width:1380px!important}.gg-shell>*{max-width:none!important}.gg-shell>.wp-block-columns{max-width:none!important}.gg-section{position:relative;margin:0!important;padding:124px 0 132px;border-top:1px solid rgba(243,255,249,.045)}.gg-section h1,.gg-section h2,.gg-section h3,.gg-section h4,.gg-hero h1{margin:0}.gg-section p,.gg-hero p{margin:0}.gg-section .wp-block-columns,.gg-hero .wp-block-columns{gap:clamp(30px,5vw,86px);margin:0}.gg-section .wp-block-columns>.wp-block-column,.gg-hero .wp-block-columns>.wp-block-column{min-width:0}.gg-section .wp-block-group:not(.gg-shell){max-width:none}.gg-section .wp-block-image,.gg-hero .wp-block-image{margin:0}
/* Navigation: WordPress site editor manages both menus and site title */
.gg-header{position:sticky;top:0;left:0;width:100%;z-index:100;background:rgba(11,17,21,.88);border-bottom:1px solid var(--gg-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);margin:0!important}.admin-bar .gg-header{top:32px}.gg-header-inner{min-height:78px;max-width:1380px;margin:auto!important;padding:0 clamp(22px,6vw,94px);gap:26px!important}.gg-brand a{font-family:var(--gg-sans);font-size:17px;font-weight:800;letter-spacing:-.055em;color:#f1f8f0!important;white-space:nowrap}.gg-brand a::before{content:'G.';font-size:23px;margin-right:9px;color:var(--gg-sage);letter-spacing:-.12em}.gg-brand a::after{content:' / PORTFOLIO';font-size:9px;letter-spacing:.18em;font-weight:700;color:var(--gg-faint)}.gg-main-nav{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#aab7b9;flex:1}.gg-main-nav .wp-block-navigation__container{gap:clamp(13px,2vw,30px)}.gg-main-nav a:hover{color:var(--gg-sage)}.gg-main-nav .wp-block-navigation__responsive-container.is-menu-open{background:#0d1519!important;color:#eef3ef!important;padding:42px 25px!important}.gg-header-cta{margin:0!important}.gg-header-cta .wp-block-button__link{font-size:10px;letter-spacing:.12em;font-weight:800;padding:12px 19px!important;border:1px solid rgba(190,219,199,.44);background:transparent;color:var(--gg-sage);border-radius:2px}.gg-header-cta .wp-block-button__link:hover{background:var(--gg-sage);color:#101a18}
/* Hero */
.gg-hero{min-height:calc(100svh - 78px);background:#0e161b;position:relative;overflow:hidden;margin:0!important;padding:0!important}.gg-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(92deg,rgba(11,17,21,.91) 2%,rgba(11,17,21,.78) 48%,rgba(11,17,21,.84) 100%),linear-gradient(0deg,#0b1115 0%,transparent 30%);z-index:1;pointer-events:none}.gg-hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.15;background-image:linear-gradient(rgba(189,218,199,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(189,218,199,.13) 1px,transparent 1px);background-size:100px 100px;mask-image:linear-gradient(to right,transparent,black)}.gg-hero-campus{position:absolute!important;inset:0;overflow:hidden;z-index:0}.gg-hero-campus img{height:100%!important;width:100%!important;object-fit:cover;object-position:center 45%;filter:grayscale(45%) brightness(.72)}.gg-hero-inner{position:relative;z-index:2;min-height:calc(100svh - 78px);padding-top:66px;padding-bottom:40px;display:flex;flex-direction:column;justify-content:space-between}.gg-hero-overline{display:flex;align-items:center;gap:14px;color:var(--gg-sage);font-size:10px;font-weight:750;letter-spacing:.18em;line-height:1.5}.gg-signal{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--gg-sage);box-shadow:0 0 0 5px rgba(189,218,199,.09)}.gg-hero-columns{align-items:center;flex:1;padding:54px 0 66px;gap:clamp(48px,5vw,80px)!important}.gg-hero-columns>.wp-block-column:first-child{flex-basis:65%!important}.gg-hero-columns>.wp-block-column:last-child{flex-basis:35%!important}.gg-hero-left{padding-bottom:8px}.gg-hero-brow{color:#cad4cc;font-size:11px;font-weight:750;letter-spacing:.21em;margin-bottom:29px!important}.gg-hero-title{font-size:clamp(64px,7.4vw,124px)!important;line-height:.94!important;letter-spacing:-.074em;font-weight:600!important;color:#f2f5ef;max-width:940px}.gg-hero-title em{font-family:var(--gg-serif);font-size:1.06em;font-weight:400;letter-spacing:-.035em;color:var(--gg-sage)}.gg-hero-intro{font-family:'DM Sans',sans-serif;font-size:clamp(16px,1.55vw,21px);line-height:1.72;max-width:600px;color:#c5d0ce;margin-top:32px!important}.gg-hero-actions{gap:12px;margin-top:37px!important}.gg-hero-actions .wp-block-button__link{font-size:11px;letter-spacing:.1em;font-weight:800;border-radius:2px;padding:17px 23px!important;transition:background .2s,color .2s,transform .2s}.gg-primary a{background:var(--gg-sage)!important;color:#0b1718!important}.gg-primary a:hover{background:#edf7e6!important;transform:translateY(-2px)}.gg-secondary a{background:transparent!important;color:#edf6f1!important;border:1px solid rgba(240,249,241,.37)}.gg-secondary a:hover{color:var(--gg-sage)!important;border-color:var(--gg-sage)}.gg-portrait-col{max-width:390px!important;width:100%;margin-left:auto!important}.gg-portrait{position:relative;aspect-ratio:3/4;max-height:480px;overflow:hidden;background:#dfd6cb;box-shadow:0 30px 100px rgba(0,0,0,.36);border:1px solid rgba(240,255,246,.18)}.gg-portrait img{display:block;width:100%;height:100%!important;object-fit:cover;object-position:50% 36%;filter:saturate(.77) contrast(.99)}.gg-portrait-col::before{content:'';display:block;width:47%;height:2px;background:var(--gg-sage);margin-bottom:18px}.gg-portrait-caption{color:#cddbd3;font-size:9px;line-height:1.5;letter-spacing:.15em;font-weight:700;margin-top:17px!important}.gg-hero-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid rgba(243,255,249,.28)}.gg-scroll,.gg-hero-university{font-size:9px;letter-spacing:.16em;color:#adbab7;font-weight:750}.gg-scroll{color:var(--gg-sage)}
/* Shared art direction */
.gg-section-label{display:flex;align-items:center;gap:20px;margin-bottom:78px!important}.gg-section-label p{font-size:10px;letter-spacing:.18em;font-weight:800;line-height:1.6}.gg-section-num{color:var(--gg-sage);white-space:nowrap}.gg-section-kicker{color:#d7e1dc;white-space:nowrap}.gg-section-rule{height:1px;flex:1;background:var(--gg-border);min-width:15px}.gg-eyebrow{font-size:10px;color:var(--gg-sage);font-weight:800;letter-spacing:.18em;margin-bottom:22px!important;line-height:1.7}.gg-display{font-family:var(--gg-sans);font-weight:600!important;font-size:clamp(50px,6.1vw,93px)!important;line-height:1.035!important;letter-spacing:-.07em;color:#f1f6ef}.gg-display em{color:var(--gg-sage);font-family:var(--gg-serif);font-weight:400;font-size:1.08em;letter-spacing:-.035em}.gg-lead{font-family:'DM Sans',sans-serif;font-size:clamp(19px,2vw,24px);line-height:1.62;color:#e1e8e1;font-weight:400}.gg-body{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.9;color:#abbab8}.gg-inline-link{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--gg-sage);margin-top:30px!important}.gg-inline-link a{border-bottom:1px solid rgba(189,218,199,.6);padding-bottom:6px}.gg-section-head{align-items:end;margin-bottom:60px!important}.gg-section-head>.wp-block-column:last-child{flex-basis:36%!important}.gg-section-head>.wp-block-column:first-child{flex-basis:64%!important}
/* About */
.gg-about{background:#0d1519}.gg-about-columns{align-items:start}.gg-about-columns>.wp-block-column:first-child{flex-basis:55%!important}.gg-about-columns>.wp-block-column:last-child{flex-basis:45%!important;padding-top:45px}.gg-about-copy>.gg-body{margin-top:25px!important}.gg-aside-quote{font-family:var(--gg-serif);font-size:28px;font-style:italic;color:#708987;margin-top:38px!important}.gg-education{margin-top:122px!important;padding-top:38px;border-top:1px solid var(--gg-border)}.gg-list-heading{font-size:clamp(32px,3.5vw,48px);letter-spacing:-.055em;font-weight:600;margin-bottom:24px!important}.gg-accent{color:var(--gg-sage)}.gg-item{display:grid!important;grid-template-columns:minmax(110px,180px) 1fr 18px;gap:24px;align-items:center;padding:23px 0!important;border-top:1px solid var(--gg-border)}.gg-item-date{color:var(--gg-sage);font-weight:700;font-size:10px;letter-spacing:.10em;line-height:1.6}.gg-item-title{font-size:clamp(16px,1.65vw,19px);font-weight:600!important;letter-spacing:-.02em;line-height:1.4!important;color:#e6f0e9}.gg-item-description{font-size:13px;color:#a2b3af;line-height:1.6;margin-top:3px!important}.gg-item-arrow{font-size:20px;font-weight:500;color:var(--gg-sage);text-align:right}
/* Research */
.gg-research{background:#111b20}.gg-research .gg-section-label{margin-bottom:78px!important}.gg-research .gg-section-head{margin-bottom:72px!important}.gg-project{border:1px solid rgba(189,218,199,.16);background:linear-gradient(142deg,rgba(34,49,53,.54),rgba(10,18,22,.82));padding:clamp(25px,4vw,57px)!important;margin-bottom:22px!important;overflow:hidden;position:relative}.gg-project::before{content:'';position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--gg-sage),transparent 50%);opacity:.85}.gg-project-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--gg-border);padding-bottom:20px;margin-bottom:35px!important;gap:16px}.gg-project-index,.gg-project-field{font-size:10px;font-weight:800;letter-spacing:.15em;color:var(--gg-sage)}.gg-project-field{color:#899c9d}.gg-project-columns{align-items:center;gap:clamp(26px,4vw,58px)!important}.gg-project-columns>.wp-block-column:first-child{flex-basis:59%!important}.gg-project-columns>.wp-block-column:last-child{flex-basis:41%!important}.gg-project-title{font-size:clamp(39px,4.2vw,64px)!important;line-height:1.06!important;letter-spacing:-.061em;font-weight:600!important}.gg-project-title em{font-family:var(--gg-serif);font-weight:400;font-size:1.12em;color:var(--gg-sage)}.gg-project-subtitle{font-size:12px;font-weight:650;letter-spacing:.035em;color:#d2dfd8;margin-top:24px!important}.gg-project-desc{font-family:'DM Sans',sans-serif;color:#afbfbb;font-size:15px;line-height:1.85;margin-top:19px!important}.gg-techniques{font-size:9px;color:var(--gg-sage);font-weight:750;letter-spacing:.09em;line-height:2;margin-top:21px!important}.gg-project-buttons{margin-top:30px!important}.gg-paper a{font-size:10px;font-weight:800;letter-spacing:.13em;padding:14px 20px!important;background:transparent!important;border:1px solid rgba(189,218,199,.7);color:var(--gg-sage)!important;border-radius:2px!important}.gg-paper a:hover{background:var(--gg-sage)!important;color:#101819!important}.gg-project-visual{width:100%;background:#e9ece9;padding:18px 12px 13px!important;border:1px solid #dae5d8}.gg-project-graph img{width:100%;height:auto;object-fit:contain}.gg-chart-caption{font-size:9px;letter-spacing:.13em;color:#526260!important;text-align:center;font-weight:750;margin-top:11px!important}
/* Materials */
.gg-materials{background:#0b1115}.gg-material-columns{margin:38px 0 48px!important;gap:42px!important}.gg-material-text{padding-top:20px;border-top:1px solid rgba(189,218,199,.35)}.gg-material-subhead{font-size:clamp(23px,2.3vw,31px);font-weight:600!important;letter-spacing:-.045em;margin-bottom:13px!important}.gg-science-grid{margin-top:54px!important;align-items:stretch;gap:25px!important}.gg-figure{background:#162126;padding:14px 14px 25px!important;border:1px solid var(--gg-border);height:100%}.gg-science-img{height:260px;background:#e9eded;overflow:hidden;display:flex;align-items:center;justify-content:center}.gg-science-img img{width:100%;height:100%!important;object-fit:contain}.gg-figure-id{font-size:10px;color:var(--gg-sage);letter-spacing:.15em;font-weight:800;margin-top:24px!important}.gg-figure-desc{color:#b6c3be;font-size:13px;line-height:1.65;margin-top:7px!important}
/* Activities */
.gg-activities{background:#101a1f}.gg-activity-columns{margin-top:72px!important;gap:56px!important}.gg-activity-group{width:100%}.gg-activity-group>.gg-eyebrow{padding-bottom:20px;border-bottom:1px solid var(--gg-border);margin-bottom:0!important}.gg-activity-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--gg-border);padding:18px 0!important}.gg-activity-details{flex:1}.gg-activity-name{color:#e1ece4;font-size:14px;font-weight:650!important;letter-spacing:-.01em;line-height:1.45!important}.gg-activity-desc{font-family:'DM Sans',sans-serif;color:#94a8a5;font-size:12px;line-height:1.65;margin-top:4px!important}.gg-activity-year{white-space:nowrap;color:#a1b4ad;font-size:10px;font-weight:700;letter-spacing:.02em;padding-top:3px}.gg-athletics{margin-top:52px!important;max-width:calc(50% - 30px)!important}
/* Work */
.gg-experience{background:#0c1418}.gg-experience-grid>.wp-block-column:first-child{flex-basis:45%!important}.gg-experience-grid>.wp-block-column:last-child{flex-basis:55%!important}.gg-exp-intro>.gg-body{max-width:390px;margin-top:29px!important}.gg-exp-list .gg-item:first-child{border-top:0}.gg-exp-list .gg-item{grid-template-columns:minmax(115px,150px) 1fr 16px}.gg-exp-list .gg-item-title{font-size:17px}.gg-exp-list .gg-item-date{font-size:9px}
/* Contact */
.gg-contact{background:radial-gradient(ellipse at 75% 110%,rgba(140,192,158,.13),transparent 50%),#131f23;padding-bottom:148px}.gg-contact-title{font-size:clamp(58px,7.1vw,108px)!important;margin:20px 0 54px!important}.gg-contact-grid{align-items:center!important;border-top:1px solid var(--gg-border);padding-top:27px;margin:0!important}.gg-contact-grid>.wp-block-column:first-child{flex-basis:56%!important}.gg-contact-grid>.wp-block-column:last-child{flex-basis:44%!important}.gg-contact-grid .gg-lead{max-width:470px;font-size:18px;color:#b9c8c1}.gg-contact-mail{display:flex;justify-content:flex-end}.gg-email a{background:var(--gg-sage)!important;color:#102019!important;border:0;font-weight:850;letter-spacing:.08em;font-size:12px;padding:19px 26px!important}.gg-email a:hover{background:#eef6ed!important}
/* Footer */
.gg-footer{background:#0b1115;border-top:1px solid var(--gg-border);margin:0!important}.gg-footer-inner{max-width:1380px!important;margin:0 auto!important;padding:24px clamp(22px,6vw,94px);min-height:96px;gap:22px}.gg-footer-logo{font-size:29px;font-weight:850;letter-spacing:-.09em;line-height:1}.gg-footer-logo span{color:var(--gg-sage)}.gg-footer-copy,.gg-footer-top{font-size:9px;letter-spacing:.13em;color:#879a96;font-weight:800}.gg-footer-top a:hover{color:var(--gg-sage)}
/* Editable native content visual feedback */
.gg-main .wp-block-post-content>p:not([class]){padding-inline:5vw}.gg-main .wp-block-post-content>h2:not([class]){padding-inline:5vw}.gg-main a:focus-visible,.gg-header a:focus-visible{outline:2px solid var(--gg-sage);outline-offset:4px}.gg-main :where(.wp-block-group,.wp-block-columns,.wp-block-image,.wp-block-buttons,.wp-block-heading,p){scroll-margin-top:90px}
/* Accessible motion */
@media (prefers-reduced-motion:no-preference){.gg-fade-entrance{opacity:0;transform:translateY(21px);transition:opacity .8s var(--gg-ease),transform .8s var(--gg-ease)}.gg-fade-entrance.is-visible{opacity:1;transform:none}.gg-project{transition:border-color .3s,transform .35s var(--gg-ease)}.gg-project:hover{border-color:rgba(189,218,199,.45);transform:translateY(-3px)}.gg-item-arrow{transition:transform .25s}.gg-item:hover .gg-item-arrow{transform:translate(3px,-3px)}}
@media(max-width:1100px){.gg-hero-title{font-size:clamp(58px,8vw,96px)!important}.gg-header-inner{gap:20px}.gg-main-nav{font-size:10px}.gg-header-cta{display:none}.gg-hero-columns>.wp-block-column:first-child{flex-basis:59%!important}.gg-hero-columns>.wp-block-column:last-child{flex-basis:41%!important}.gg-project-columns>.wp-block-column:first-child{flex-basis:56%!important}.gg-project-columns>.wp-block-column:last-child{flex-basis:44%!important}}
@media(max-width:781px){.admin-bar .gg-header{top:46px}.gg-section{padding:82px 0 90px}.gg-section-label{margin-bottom:48px!important}.gg-hero-inner{min-height:auto;padding-top:32px;padding-bottom:25px}.gg-hero-columns{padding:68px 0 50px;gap:40px!important}.gg-hero-columns>.wp-block-column:first-child,.gg-hero-columns>.wp-block-column:last-child{flex-basis:auto!important}.gg-hero-title{font-size:clamp(56px,11vw,88px)!important}.gg-hero-intro{max-width:600px}.gg-portrait-col{margin:0!important;max-width:300px!important}.gg-portrait{aspect-ratio:4/4.5;height:380px}.gg-hero-bottom{gap:20px}.gg-hero-university{max-width:210px;text-align:right}.gg-about-columns>.wp-block-column:first-child,.gg-about-columns>.wp-block-column:last-child{flex-basis:auto!important}.gg-about-columns>.wp-block-column:last-child{padding-top:0}.gg-education{margin-top:72px!important}.gg-section-head>.wp-block-column:first-child,.gg-section-head>.wp-block-column:last-child{flex-basis:auto!important}.gg-section-head{margin-bottom:48px!important}.gg-project-columns>.wp-block-column:first-child,.gg-project-columns>.wp-block-column:last-child{flex-basis:auto!important}.gg-project-visual{max-width:570px!important}.gg-science-img{height:auto;min-height:230px}.gg-activity-columns{margin-top:45px!important}.gg-athletics{max-width:100%!important}.gg-experience-grid>.wp-block-column:first-child,.gg-experience-grid>.wp-block-column:last-child{flex-basis:auto!important}.gg-contact-grid>.wp-block-column:first-child,.gg-contact-grid>.wp-block-column:last-child{flex-basis:auto!important}.gg-contact-mail{justify-content:flex-start}.gg-header-inner{min-height:68px}.gg-header .wp-block-navigation__responsive-container-open{display:flex!important}}
@media(max-width:560px){.gg-header-inner{padding-inline:20px}.gg-brand a{font-size:13px}.gg-brand a::after{display:none}.gg-hero-overline{font-size:8px;letter-spacing:.11em}.gg-hero-brow{font-size:9px}.gg-hero-title{font-size:clamp(52px,14vw,77px)!important}.gg-hero-intro{font-size:16px;line-height:1.7}.gg-hero-actions{flex-direction:column;align-items:stretch!important}.gg-hero-actions .wp-block-button{width:100%}.gg-hero-actions .wp-block-button a{width:100%;text-align:center}.gg-portrait{height:380px}.gg-hero-bottom{flex-direction:column;gap:10px}.gg-hero-university{max-width:none;text-align:left}.gg-display{font-size:clamp(45px,11vw,69px)!important}.gg-section-label{gap:11px}.gg-section-label p{font-size:8px;letter-spacing:.1em}.gg-lead{font-size:18px}.gg-body{font-size:15px}.gg-item{grid-template-columns:1fr 15px;gap:12px}.gg-item-date{grid-column:1/3;grid-row:1}.gg-item-copy{grid-column:1;grid-row:2}.gg-item-arrow{grid-column:2;grid-row:2}.gg-project{padding:26px 20px!important}.gg-project-title{font-size:clamp(39px,11vw,54px)!important}.gg-project-top{flex-direction:column;gap:6px}.gg-project-desc{font-size:14px}.gg-activity-year{font-size:9px}.gg-contact-title{font-size:clamp(55px,12vw,74px)!important}.gg-email a{font-size:10px;padding:17px 15px!important}.gg-footer-inner{flex-direction:column!important;align-items:flex-start!important;gap:15px!important}.gg-footer-copy{font-size:8px;line-height:1.6}}
@media(max-width:340px){.gg-hero-title{font-size:47px!important}.gg-display{font-size:42px!important}.gg-hero-overline{font-size:7px}}


/* ---- Gabby Atelier / refined v2 editorial art direction ---- */
.gg-header{background:rgba(8,15,18,.95);border-bottom:1px solid rgba(202,227,210,.13)}
.gg-header-inner{min-height:76px}
.gg-brand{margin:0!important}
.gg-brand a{font-family:var(--gg-sans);font-size:clamp(18px,1.5vw,21px);font-weight:750;letter-spacing:-.055em;color:#f1f5ee!important}
.gg-brand a::before,.gg-brand a::after{display:none!important;content:none!important}
.gg-header .gg-main-nav{letter-spacing:.1em}
.gg-hero{background:#0b1217}
.gg-hero::before{background:linear-gradient(90deg,rgba(7,14,19,.97) 0%,rgba(7,14,19,.90) 32%,rgba(7,14,19,.55) 67%,rgba(7,14,19,.82) 100%),linear-gradient(0deg,#0b1115,transparent 32%)}
.gg-hero::after{opacity:.11;background-size:120px 120px}
.gg-hero-campus img{filter:grayscale(35%) brightness(.58) saturate(.8);object-position:50% 43%}
.gg-hero-inner{padding-top:clamp(42px,5vw,84px);padding-bottom:38px}
.gg-hero-columns{gap:clamp(50px,6vw,106px)!important;padding-block:54px 70px}
.gg-hero-columns>.wp-block-column:first-child{flex-basis:61%!important}
.gg-hero-columns>.wp-block-column:last-child{flex-basis:39%!important}
.gg-hero-title{font-size:clamp(64px,6.85vw,111px)!important;letter-spacing:-.082em;line-height:.985!important;max-width:780px}
.gg-hero-brow{font-size:10px;color:var(--gg-sage);margin-bottom:25px!important}
.gg-hero-intro{max-width:550px;margin-top:30px!important}
.gg-hero-actions{display:flex!important;align-items:center!important;gap:13px!important;margin-top:32px!important}
.gg-hero-actions .wp-block-button a{min-height:52px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 16px rgba(0,0,0,.08)}
.gg-portrait-col{max-width:375px!important;margin:0 0 0 auto!important;position:relative}
.gg-portrait-col::before{position:absolute;top:-16px;left:-17px;z-index:3;margin:0;width:41%;height:2px}
.gg-portrait{aspect-ratio:4/5;max-height:510px;border:1px solid rgba(223,246,234,.4);box-shadow:0 24px 90px rgba(0,0,0,.58)}
.gg-portrait::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 40px rgba(3,16,14,.08);pointer-events:none}
.gg-portrait-caption{display:none!important}
.gg-hero-bottom{border-color:rgba(223,241,227,.19)}
.gg-project{border-color:rgba(187,215,200,.19);background:linear-gradient(142deg,rgba(32,48,53,.55),rgba(10,18,22,.88));border-radius:3px}
.gg-project:hover{box-shadow:0 32px 80px rgba(0,0,0,.14)}
.gg-project-buttons{display:flex!important;gap:12px!important;margin-top:27px!important}
.gg-paper a{display:inline-flex;align-items:center;justify-content:center;min-height:47px;font-size:10px;letter-spacing:.14em;padding-inline:21px!important}
.gg-project-visual{border-radius:2px;box-shadow:0 14px 45px rgba(0,0,0,.22)}
.gg-figure{border-radius:2px}
.gg-main .wp-block-post-content:has(.gg-hero){overflow:clip}
/* Research overlay lives on the same page; PDFs never force navigation away. */
body.gg-paper-modal-open{overflow:hidden}
.gg-paper-dialog{position:fixed;inset:0;width:min(1100px,calc(100vw - 40px));max-width:none;max-height:min(92dvh,1050px);padding:0;border:1px solid rgba(202,226,207,.34);border-radius:12px;background:#0e171b;color:#f0f4ef;box-shadow:0 32px 160px rgba(0,0,0,.7);overflow:hidden;overscroll-behavior:contain}
.gg-paper-dialog::backdrop{background:rgba(2,8,12,.82);backdrop-filter:blur(10px)}
.gg-paper-dialog *{box-sizing:border-box}
.gg-paper-dialog button{font:inherit;cursor:pointer}
.gg-paper-dialog .gg-md-shell{height:min(92dvh,1050px);display:flex;flex-direction:column;overflow:hidden}
.gg-paper-dialog .gg-md-top{flex:none;padding:25px clamp(18px,4vw,46px) 20px;background:linear-gradient(130deg,#172529,#0b151a);border-bottom:1px solid rgba(202,226,207,.18)}
.gg-paper-dialog .gg-md-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:17px}
.gg-paper-dialog .gg-md-eyebrow{font:800 10px/1.5 var(--gg-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gg-sage)}
.gg-paper-dialog .gg-md-close{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(202,226,207,.3);border-radius:50%;background:transparent;color:#eef3ef;font-size:26px;line-height:1;transition:background .2s,color .2s}
.gg-paper-dialog .gg-md-close:hover{background:var(--gg-sage);color:#0b1115}
.gg-paper-dialog .gg-md-title{font-family:var(--gg-sans);font-size:clamp(27px,4vw,47px);font-weight:600;line-height:1.08;letter-spacing:-.065em;margin:0 0 11px;color:#f1f6f0}
.gg-paper-dialog .gg-md-subtitle{font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.65;color:#bdc9c5;margin:0}
.gg-paper-dialog .gg-md-tabs{display:flex;align-items:center;gap:25px;margin-top:19px}
.gg-paper-dialog .gg-md-tab{border:0;border-bottom:2px solid transparent;padding:10px 0;background:transparent;font:750 11px var(--gg-sans);letter-spacing:.1em;color:#8fa5a0;text-transform:uppercase}
.gg-paper-dialog .gg-md-tab[aria-selected="true"]{color:var(--gg-sage);border-bottom-color:var(--gg-sage)}
.gg-paper-dialog .gg-md-view{flex:1;min-height:0;overflow:auto;scrollbar-color:#3f5b50 #0f1a1f}
.gg-paper-dialog .gg-md-summary{padding:clamp(22px,4vw,48px);display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(20px,4vw,55px);align-items:start}
.gg-paper-dialog .gg-md-section-label{font-size:10px;letter-spacing:.18em;color:var(--gg-sage);font-weight:800;margin:0 0 14px}
.gg-paper-dialog .gg-md-heading{font-family:var(--gg-serif);font-size:clamp(29px,3.3vw,42px);font-weight:400;font-style:italic;letter-spacing:-.025em;line-height:1.14;margin:0 0 20px;color:#e8f2eb}
.gg-paper-dialog .gg-md-desc{font:400 16px/1.85 'DM Sans',sans-serif;color:#bfccc7;margin:0 0 24px}
.gg-paper-dialog .gg-md-tech{font:650 11px/2 var(--gg-sans);letter-spacing:.05em;color:#bad9c5;margin:0 0 25px}
.gg-paper-dialog .gg-md-figure{margin:0;background:#e5ede9;padding:12px;border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 40px rgba(0,0,0,.22)}
.gg-paper-dialog .gg-md-figure img{width:100%;height:auto;display:block}
.gg-paper-dialog .gg-md-figure figcaption{color:#52625f;font:750 9px/1.5 var(--gg-sans);letter-spacing:.14em;text-align:center;padding:13px 0 2px;text-transform:uppercase}
.gg-paper-dialog .gg-md-view-paper{padding:16px;display:flex;flex-direction:column;height:100%;min-height:330px}
.gg-paper-dialog .gg-md-paper-note{flex:none;padding:9px 9px 16px;color:#b6cbc1;font:400 13px/1.5 'DM Sans',sans-serif}
.gg-paper-dialog .gg-md-frame{width:100%;height:100%;min-height:340px;flex:1;background:#f3f5f3;border:0;border-radius:4px}
.gg-paper-dialog .gg-md-footer{padding:15px clamp(18px,4vw,46px);flex:none;border-top:1px solid rgba(202,226,207,.15);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;background:#0d171b}
.gg-paper-dialog .gg-md-footer-note{font:600 10px/1.5 var(--gg-sans);letter-spacing:.08em;color:#91aaa0}
.gg-paper-dialog .gg-md-download{padding:11px 16px;text-decoration:none!important;background:var(--gg-sage);color:#0d1b17!important;border-radius:3px;font:800 10px/1.5 var(--gg-sans);letter-spacing:.1em;white-space:nowrap;text-transform:uppercase}
.gg-paper-dialog .gg-md-download:hover{background:#e6f1e6}
@media(max-width:781px){.gg-hero-columns>.wp-block-column:first-child,.gg-hero-columns>.wp-block-column:last-child{flex-basis:auto!important}.gg-hero-columns{padding:55px 0 45px}.gg-hero-title{font-size:clamp(56px,12vw,84px)!important}.gg-portrait-col{margin-left:0!important}.gg-paper-dialog .gg-md-summary{grid-template-columns:1fr}.gg-paper-dialog{width:calc(100vw - 24px);max-height:95dvh}.gg-paper-dialog .gg-md-shell{height:95dvh}.gg-paper-dialog .gg-md-top{padding-block:15px 10px}.gg-paper-dialog .gg-md-title{font-size:27px}.gg-paper-dialog .gg-md-view-paper{padding:8px}.gg-paper-dialog .gg-md-frame{min-height:250px}}
@media(max-width:560px){.gg-hero-overline{font-size:8px}.gg-hero-brow{font-size:9px}.gg-hero-title{font-size:clamp(51px,13.6vw,70px)!important}.gg-hero-actions{display:flex!important;flex-direction:column;align-items:stretch!important}.gg-hero-actions .wp-block-button{width:100%}.gg-portrait-col{max-width:310px!important}.gg-hero-bottom{gap:8px}.gg-paper-dialog .gg-md-footer-note{display:none}.gg-paper-dialog .gg-md-footer{justify-content:flex-end}.gg-paper-dialog .gg-md-summary{padding:20px}.gg-paper-dialog .gg-md-title{font-size:25px}}
@media(prefers-reduced-motion:reduce){.gg-paper-dialog *, .gg-paper-dialog::backdrop{animation:none!important;transition:none!important}}

.gg-paper-dialog [hidden]{display:none!important}
