.ros-funnel-shell{--rf-navy:#17243f;--rf-navy2:#2c436a;--rf-gold:#a8792a;--rf-gold2:#d5ba78;--rf-rose:#e9d6db;--rf-cream:#fbf7ef;--rf-ink:#302b24;position:relative;width:min(1180px,calc(100vw - 26px));margin:22px auto 46px;min-height:760px;overflow:hidden;color:var(--rf-ink);font-family:"Cormorant Garamond",Georgia,serif;border:1px solid rgba(77,62,36,.14);border-radius:3px;background:linear-gradient(135deg,#fbf7ef 0%,#f7efe9 46%,#eef2f7 100%);box-shadow:0 28px 80px -48px rgba(23,36,63,.55),0 10px 28px rgba(32,38,50,.08);isolation:isolate}.ros-funnel-shell *{box-sizing:border-box}.ros-funnel-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-2}.ros-funnel-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,247,239,.97) 0%,rgba(251,247,239,.90) 47%,rgba(247,241,237,.67) 70%,rgba(237,241,247,.58) 100%)}.ros-funnel-botanical{position:absolute;object-fit:contain;opacity:.17;filter:saturate(.72) sepia(.16);transform-origin:center;will-change:transform}.ros-funnel-botanical--main{right:-6%;top:-12%;width:min(53vw,610px);opacity:.21;animation:rosKenBurns 26s ease-in-out infinite alternate}.ros-funnel-botanical--left{left:-10%;bottom:-13%;width:min(31vw,360px);transform:rotate(-8deg);opacity:.13}.ros-funnel-botanical--right{right:-8%;bottom:-16%;width:min(31vw,350px);transform:rotate(12deg);opacity:.12}@keyframes rosKenBurns{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.11) translate3d(-14px,12px,0)}}.ros-funnel-topline{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 28px 0}.ros-funnel-mark{display:flex;align-items:center;gap:13px;min-width:0}.ros-funnel-mark img{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(35,31,24,.16))}.ros-funnel-mark span{display:grid;gap:2px;min-width:0}.ros-funnel-mark strong{font-family:"Cinzel",Georgia,serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#72511b}.ros-funnel-mark small{font-size:14px;color:#736b60}.ros-funnel-guide{appearance:none;min-width:44px;min-height:44px;border:0;border-bottom:1px solid rgba(168,121,42,.45);border-radius:0;background:transparent;color:#70511c;padding:9px 4px;font:600 14px/1 "Cormorant Garamond",Georgia,serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.ros-funnel-progress{display:flex;gap:5px;width:min(360px,38vw);margin-left:auto}.ros-funnel-progress span{height:2px;flex:1;background:rgba(104,89,65,.16);transition:background .35s ease,transform .35s ease;transform-origin:left}.ros-funnel-progress span.is-on{background:linear-gradient(90deg,#a8792a,#d5ba78)}.ros-funnel-stage{min-height:640px;padding:52px clamp(28px,6vw,82px) 66px;display:none;align-items:center}.ros-funnel-stage.is-active{display:grid;animation:rosStageIn .6s cubic-bezier(.2,.7,.2,1)}@keyframes rosStageIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.ros-funnel-copy{max-width:720px}.ros-funnel-copy--narrow{max-width:620px}.ros-funnel-kicker{margin:0 0 9px;color:#8e6522;text-transform:uppercase;letter-spacing:.19em;font:600 12px/1.4 "Cinzel",Georgia,serif}.ros-funnel-title{margin:0;max-width:760px;font-family:"Cinzel",Georgia,serif;font-size:clamp(38px,5.4vw,72px);line-height:1.02;font-weight:500;letter-spacing:.015em;color:#263552}.ros-funnel-title em{color:#92671e;font-style:normal}.ros-funnel-lead{max-width:690px;margin:22px 0 0;font-size:clamp(19px,2vw,24px);line-height:1.48;color:#4f493f}.ros-funnel-rule{width:88px;height:1px;margin:25px 0;background:linear-gradient(90deg,#9d7023,transparent)}.ros-funnel-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.ros-funnel-btn{appearance:none;min-height:46px;border:1px solid #9c712b;border-radius:3px;padding:11px 19px;background:#9a6f29;color:#fff!important;text-decoration:none!important;font:600 14px/1.2 "Cinzel",Georgia,serif;letter-spacing:.035em;cursor:pointer;box-shadow:0 8px 20px -14px rgba(74,51,17,.75);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.ros-funnel-btn:hover,.ros-funnel-btn:focus{background:#7e591e;transform:translateY(-1px);box-shadow:0 13px 23px -15px rgba(74,51,17,.82)}.ros-funnel-btn--quiet{background:rgba(255,255,255,.74);color:#394b6a!important;border-color:rgba(62,78,104,.28);box-shadow:none}.ros-funnel-btn--quiet:hover,.ros-funnel-btn--quiet:focus{background:#fff}.ros-funnel-btn[disabled]{opacity:.42;cursor:not-allowed;transform:none}.ros-funnel-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:min(850px,100%);margin-top:30px}.ros-funnel-choice{appearance:none;text-align:left;border:1px solid rgba(79,70,55,.15);border-radius:3px;padding:24px;background:rgba(255,255,255,.84);color:inherit;cursor:pointer;box-shadow:0 18px 34px -28px rgba(28,35,48,.45);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.ros-funnel-choice:hover,.ros-funnel-choice:focus{transform:translateY(-2px);border-color:rgba(164,116,33,.38);box-shadow:0 24px 42px -29px rgba(28,35,48,.53)}.ros-funnel-choice strong{display:block;font-family:"Cinzel",Georgia,serif;font-size:19px;font-weight:500;color:#79561e}.ros-funnel-choice span{display:block;margin-top:8px;font-size:17px;line-height:1.48;color:#5a544b}.ros-funnel-card{width:min(720px,100%);padding:28px;border:1px solid rgba(67,61,51,.13);border-radius:3px;background:rgba(255,255,255,.89);box-shadow:0 22px 44px -34px rgba(26,34,48,.46);backdrop-filter:blur(4px)}.ros-funnel-card h3{margin:0 0 10px;font-family:"Cinzel",Georgia,serif;color:#815b1e;font-size:24px;font-weight:500}.ros-funnel-card p{font-size:17px;line-height:1.56}.ros-funnel-code-row{display:flex;gap:9px;align-items:stretch;margin-top:18px}.ros-funnel-code-row input{flex:1;text-transform:uppercase;letter-spacing:.08em}.ros-funnel-fieldset{width:min(720px,100%);display:grid;gap:15px}.ros-funnel-fieldset label{display:grid;gap:6px;color:#4b4336;font-weight:600;font-size:16px}.ros-funnel-fieldset input,.ros-funnel-fieldset textarea,.ros-funnel-code-row input{width:100%;border:1px solid rgba(71,65,55,.22);border-radius:3px;background:rgba(255,255,255,.92);color:#292720;padding:12px 13px;font:500 17px/1.35 "Cormorant Garamond",Georgia,serif;box-shadow:inset 0 1px 2px rgba(0,0,0,.02)}.ros-funnel-fieldset textarea{min-height:150px;resize:vertical}.ros-funnel-fieldset input:focus,.ros-funnel-fieldset textarea:focus,.ros-funnel-code-row input:focus{outline:none;border-color:#a8792a;box-shadow:0 0 0 2px rgba(168,121,42,.09)}.ros-funnel-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ros-funnel-portrait{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;padding:15px;border:1px solid rgba(78,68,52,.14);background:rgba(255,253,249,.82)}.ros-funnel-portrait-frame{aspect-ratio:4/5;border:1px solid rgba(94,75,42,.22);background:linear-gradient(145deg,#f4ede3,#fff);display:grid;place-items:center;overflow:hidden;box-shadow:0 12px 27px rgba(35,31,24,.10)}.ros-funnel-portrait-frame img{width:100%;height:100%;object-fit:cover;display:none}.ros-funnel-portrait-frame span{padding:12px;text-align:center;color:#847968}.ros-funnel-photo-note{font-size:15px;line-height:1.5;color:#62594c}.ros-funnel-check{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:10px!important;font-weight:400!important;line-height:1.5}.ros-funnel-check input{width:auto!important;margin-top:4px}.ros-funnel-review{display:grid;gap:11px;margin-top:18px}.ros-funnel-review div{display:grid;grid-template-columns:145px 1fr;gap:14px;padding:9px 0;border-bottom:1px solid rgba(85,75,60,.10)}.ros-funnel-review dt{color:#8a6528;font-family:"Cinzel",Georgia,serif;font-size:12px;letter-spacing:.05em;text-transform:uppercase}.ros-funnel-review dd{margin:0;font-size:17px;color:#443f37}.ros-funnel-status{min-height:1.4em;margin:12px 0 0;color:#7b5a22;font-size:16px}.ros-funnel-notice{margin:12px clamp(28px,6vw,82px) 0;padding:13px 15px;border:1px solid rgba(82,70,43,.15);border-left:3px solid #9a6a16;background:rgba(255,253,248,.94)}.ros-funnel-notice--error{border-left-color:#8b3838}.ros-funnel-guide-card{position:absolute;right:22px;top:78px;z-index:8;width:min(300px,calc(100% - 44px));padding:14px 15px;border:1px solid rgba(92,76,48,.14);border-radius:3px;background:rgba(255,253,248,.97);box-shadow:0 18px 38px -26px rgba(25,31,44,.45);display:none}.ros-funnel-guide-card.is-open{display:block}.ros-funnel-guide-card strong{font-family:"Cinzel",Georgia,serif;color:#7e5a1d;font-size:13px}.ros-funnel-guide-card p{margin:6px 0 0;color:#5d5549;line-height:1.4}.ros-funnel-sealed{text-align:center;max-width:720px;margin:auto;padding:70px 20px}.ros-funnel-sealed img{width:115px;filter:drop-shadow(0 9px 18px rgba(27,31,39,.16))}.ros-funnel-sealed h2{margin:22px 0 12px;font-family:"Cinzel",Georgia,serif;font-weight:500;font-size:clamp(30px,4vw,48px);color:#73501a}.ros-funnel-sealed p{font-size:20px;line-height:1.5;color:#514b42}.ros-funnel-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}@media(max-width:780px){.ros-funnel-shell{width:calc(100vw - 12px);margin:6px auto 28px;min-height:720px}.ros-funnel-topline{padding:16px 16px 0}.ros-funnel-mark small{display:none}.ros-funnel-progress{display:none}.ros-funnel-stage{min-height:630px;padding:38px 20px 50px}.ros-funnel-choice-grid,.ros-funnel-field-grid{grid-template-columns:1fr}.ros-funnel-portrait{grid-template-columns:110px minmax(0,1fr)}.ros-funnel-code-row{display:grid}.ros-funnel-review div{grid-template-columns:1fr;gap:3px}.ros-funnel-botanical--main{width:75vw;right:-24%}.ros-funnel-botanical--left{width:48vw}.ros-funnel-notice{margin:12px 20px 0}.ros-funnel-title{font-size:clamp(34px,11vw,54px)}}@media(prefers-reduced-motion:reduce){.ros-funnel-botanical--main,.ros-funnel-stage.is-active{animation:none!important}.ros-funnel-choice,.ros-funnel-btn{transition:none!important}}
/* Let the entrance itself be the page title/experience. */
body.page-id-3556 .entry-header { display: none !important; }
body.page-id-3556 .inside-article { padding-top: 10px; }
body.page-id-3556 .ros-funnel-shell { margin-left: auto !important; margin-right: auto !important; }
.ros-funnel-reception{margin:18px 0 4px;padding:14px 15px;border-left:3px solid #b99047;background:rgba(255,250,240,.72);box-shadow:0 12px 24px -24px rgba(28,34,45,.45)}
.ros-funnel-reception[hidden]{display:none!important}.ros-funnel-reception p{margin:0 0 10px;color:#564f46;font-size:16px}.ros-funnel-btn--reception{display:inline-block;background:#253a5e!important;color:#fff!important;border-color:#a87d37!important;text-decoration:none!important}

/* Keep route choices legible when pointer hover follows a step transition.
   The global site button:hover rule otherwise paints a charcoal background
   while the choice's gold heading and dark description retain their colors. */
body.page-id-3556 .ros-funnel-shell button.ros-funnel-choice:hover,
body.page-id-3556 .ros-funnel-shell button.ros-funnel-choice:focus-visible {
  background: rgba(255, 255, 255, .97) !important;
  color: #302b24 !important;
  border-color: rgba(164, 116, 33, .55) !important;
  box-shadow: 0 18px 32px -26px rgba(28, 35, 48, .45);
}
body.page-id-3556 .ros-funnel-shell button.ros-funnel-choice:hover strong,
body.page-id-3556 .ros-funnel-shell button.ros-funnel-choice:focus-visible strong {
  color: #79561e !important;
}
body.page-id-3556 .ros-funnel-shell button.ros-funnel-choice:hover span,
body.page-id-3556 .ros-funnel-shell button.ros-funnel-choice:focus-visible span {
  color: #4b453b !important;
}

.ros-funnel-code-label {
  display: block;
  margin-top: 14px;
  color: #4b4336;
  font: 600 16px/1.4 Georgia, serif;
}
.ros-funnel-photo-formats {
  display: block;
  margin-top: 3px;
  color: #645b4d;
  font: 400 14px/1.45 Georgia, serif;
}

/* Review the actual introduction and chosen portrait before applying.
   Keep long answers/file names legible without horizontal scrolling. */
body.page-id-3556 #ros-review-introduction {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.5;
}
body.page-id-3556 #ros-review-portrait-status { overflow-wrap: anywhere; }
body.page-id-3556 #ros-review-portrait-image {
  display: block;
  width: 96px;
  max-width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  margin: 10px 0 0;
  border: 1px solid rgba(94, 75, 42, .22);
}
body.page-id-3556 #ros-review-portrait-image[hidden] { display: none !important; }

/* Keyboard clarity on the public Candidate Portal. */
.ros-funnel-shell :where(button,a,input,textarea,select):focus-visible{outline:2px solid #a8792a;outline-offset:3px}

/* Mobile Candidate Portal: it has its own Royal House crest and entrance.
   The full government-site navigation/hero must not obscure this introduction. */
@media (max-width: 780px) {
  body.page-id-3556 .secondary-navigation,
  body.page-id-3556 .site-header,
  body.page-id-3556 #site-navigation,
  body.page-id-3556 .main-navigation:not(.slideout-navigation) {
    display: none !important;
  }
  body.page-id-3556 #page,
  body.page-id-3556 #content,
  body.page-id-3556 #primary,
  body.page-id-3556 #main,
  body.page-id-3556 .inside-article,
  body.page-id-3556 .entry-content {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.page-id-3556 .inside-article {
    padding: 0 !important;
  }
  body.page-id-3556 {
    overflow-x: clip;
  }
  body.page-id-3556 .ros-funnel-shell {
    box-sizing: border-box;
    width: calc(100% - 20px) !important;
    max-width: 680px !important;
    margin: 12px auto 36px !important;
    min-height: 0;
  }
  body.page-id-3556 .ros-funnel-topline {
    padding: 16px 14px 0;
    gap: 8px;
  }
  body.page-id-3556 .ros-funnel-stage {
    min-height: min(560px, 75svh);
    padding: 30px 17px 40px;
  }
  body.page-id-3556 .ros-funnel-copy,
  body.page-id-3556 .ros-funnel-title,
  body.page-id-3556 .ros-funnel-fieldset,
  body.page-id-3556 .ros-funnel-card {
    max-width: 100%;
    min-width: 0;
  }
  body.page-id-3556 .ros-funnel-title {
    font-size: clamp(27px, 8.2vw, 39px);
    line-height: 1.12;
    letter-spacing: -.01em;
    overflow-wrap: break-word;
  }
  body.page-id-3556 .ros-funnel-lead {
    font-size: 18px;
    line-height: 1.48;
  }
  body.page-id-3556 .ros-funnel-choice,
  body.page-id-3556 .ros-funnel-card { padding: 18px 16px; }
  body.page-id-3556 .ros-funnel-mark strong { font-size: 11px; letter-spacing: .045em; }
  body.page-id-3556 .ros-funnel-actions > * {
    min-width: 0;
    max-width: 100%;
  }
}

/* Public applicant portrait: give the upload, preview and private-storage
   explanation their own readable space on a phone. Desktop stays unchanged. */
@media (max-width: 480px) {
  body.page-id-3556 .ros-funnel-portrait {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 17px;
  }
  body.page-id-3556 .ros-funnel-portrait-frame {
    width: 126px;
    max-width: 100%;
    margin: 0 auto;
  }
  body.page-id-3556 .ros-funnel-portrait > div:last-child {
    min-width: 0;
    width: 100%;
  }
  body.page-id-3556 .ros-funnel-portrait label {
    display: grid;
    gap: 8px;
    text-align: left;
  }
  body.page-id-3556 input#ros-request-portrait {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 5px 0;
    font-size: 14px;
    color: #3d382f;
  }
  body.page-id-3556 input#ros-request-portrait::file-selector-button {
    padding: 10px 12px;
    margin-right: 9px;
    border: 1px solid #ab8a57;
    border-radius: 2px;
    background: #fffaf1;
    color: #493d29;
    font: 600 14px/1.3 Georgia, serif;
    cursor: pointer;
  }
  body.page-id-3556 .ros-funnel-photo-note {
    margin: 12px 0 0;
    font-size: 16px;
    line-height: 1.5;
  }
}
